0

JXPathを、メモリに保持するのに非現実的に大きいか高価なコレクションを表す特定のノードを持つツリーへのアクセス言語として使用していたと想像してください。

.../customers[id=12345]

顧客は実際にデータベースにあり、何億もの顧客がいます。想像できるすべてのクエリの完全な一般性は必要ありません。このような適切にインデックス付けされたクエリのほんの数種類です。

jxpathのカスタマイズ機能を使用してこれらを実装する実用的な方法はありますか?もしそうなら、例、関連するドキュメントなどを教えていただけますか?

4

1 に答える 1

1

JXPathユーザーガイドをご覧ください。クエリをパラメータとして受け取る拡張関数を作成できます。

public static NodeSet getCustomers(String query){
    List<Customer> l=getCustomersFromMyDatabase(query);
    BasicNodeSet bns=new BasicNodeSet();
    putCustomersIntoNodeSet(bns,l);
    return bns;
}

xpathは次のようになります

getCustomers('id=123')

また、 ExpressionContextタイプの最初のパラメーターを使用することもできます。これにより、必要に応じてコンテキストオブジェクトを取得できます。

于 2014-01-21T11:22:12.867 に答える