【发布时间】:2010-08-04 09:35:17
【问题描述】:
找出XPathExpression.execute("child::<em>")</em>和Element.getElementsByTagName("")之间哪个方法调用更快的正确测试用例是什么?
通过 DOM 搜索:
NodeList nl = ((Element)this.currentNode).getElementsByTagName("*");
或通过 XPath:
public static final <T> T xpath(QName qType, Node n, String exp) {
try {
XPathExpression expr = xpath.compile(exp);
T result = (T) expr.evaluate(n, qType);
return result;
} catch (XPathExpressionException e) {
e.printStackTrace();
}
return null;
}
附言
我放代码也是为了问我可以选择哪些改进来增强 XPath 编译,
例如:将XPathExpression expr 移出方法上下文并缓存具有相似xpath 表达式的exp 实例?
【问题讨论】: