想象一下,一个人使用JXPath作为对树的访问语言,该树具有表示集合的某些节点,这些集合在存储器中保存是不切实际的大或昂贵的-例如,
.../customers[id=12345]客户真的在一个数据库中,有无数这样的客户。我不需要人们能想象到的所有查询的全部通用性--只需要几种索引良好的查询就行了。
有没有一种实用的方法来使用jxpath的定制功能来实现这些?如果是这样的话,你能给我指个例子,相关的文档等吗?
发布于 2014-01-21 19:22:13
看看the JXPath User's Guide吧。您可以创建一个将查询作为参数的扩展函数。
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,类型的第一个参数,如果你需要上下文对象,它可以提供给你,等等。
https://stackoverflow.com/questions/14691565
复制相似问题