如何在XPath查询中使用Java String变量
|
我有一个“ 0”文件,其中包含作者姓名和书名。我正在使用以下代码片段查询
books.xml
。
XPathFactory factory = XPathFactory.newInstance();
XPath xpath = factory.newXPath();
XPathExpression expr
= xpath.compile(\"//book[author= \'Larry Niven\']/title/text()\");
现在,如果我想在程序作为String变量运行时传递名称,则不要直接将名称放入查询中。仅将字符串变量名放不起作用!
没有找到相关结果
已邀请:
4 个回复
席酱
要么
其中
是类型
的变量,来自某个地方。
联海
这可以用以下代码演示:
藐刚
与XPath函数大致相同。代码,首先是常规XPath评估的包装器:
然后,我们添加自定义变量和函数的概念,当然还有名称空间:
如果没有变量和函数解析器,那将不会很有趣:
这些功能显然不能包含在上面,因为通常会运行自定义代码(即,重点是您编写自己的类),因此可以使用类似
然后,以某种方式在EvaluateImpl(..)中实现/子类化自己的逻辑。 这样肯定会使String追加看起来相当……有吸引力;)注意:此代码已经有好几年了,可能存在一种更好的方法来完成所有这些工作。
澜悍景哭苟