誰かがhtmlの指定された文字列に対してidで要素を効率的に検索しているかどうかは不思議です。私は2つの引数を受け取るメソッドを書いている:。idでHTML要素をJavaコードで検索する
public String getFilteredHtml(String html, Set<String> ids)
に渡されたidをマッチング要素の連結HTMLを返します。現在、私は、ドキュメントにHTMLを解析することによって、これを達成するためにJSoupを使用しています方法、およびIDをループしてdocument.getElementById
の結果を追加するか、または[id=id1],[id=id2]
などのようなセレクタを使用してください。どちらの場合も同等のパフォーマンスで動作します。
しかし、私は助けることができませんでしたが、htmlドキュメントを解析しているときに、String id> Elementを含むマップがルックアップがずっと速く保たれていたことに気付きました。誰もがこの機能を持っているライブラリを知っていますか、それとも自分でそれを実装する方法を知っていますか?またはこれをより速く達成できる他の方法はありますか?
あなたがしようとしていることを理解できません。もう少し詳細を教えていただけますか?あなたはHTML文字列からIDで取得した要素で正確に何をしていますか? – Evan
これはajaxフィルタであり、サーブレットから生成されたhtmlを取り込み、ajaxを介してページ上で更新する必要のあるフラグメントのみを取り除くためにそれを削除します。 – user842800