首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

JAXP兑现在XPath中获取带命名空间的节点(NamespaceContext)

2013-07-16 
JAXP实现在XPath中获取带命名空间的节点(NamespaceContext)public static void main(String[] args) throw

JAXP实现在XPath中获取带命名空间的节点(NamespaceContext)
public static void main(String[] args) throws IOException, XPathExpressionException {XPathFactory factory = XPathFactory.newInstance();XPath xPath = factory.newXPath();DefaultNamespaceContext defaultNamespaceContext = new DefaultNamespaceContext();/* * 设置前缀与命名空间URI的映射关系 * XPath表达式中使用的前缀与文档中实际的前缀并没有关联,这里只是为了在XPath中增加一个前缀标识所有。 * 但前缀对应的命名空间URI必须与文档中实际的命名空间URI保持一致 */defaultNamespaceContext.addNamespace("t", "http://www.appdemo.daniele.com/schema/templet");xPath.setNamespaceContext(defaultNamespaceContext); InputSource source = new InputSource(new FileInputStream(new File("resource/xml/schema/schema_test.xml")));String expression = "/t:templet/t:bean[@name='user']/@class";XPathExpression compiledExpression = xPath.compile(expression);System.out.println(compiledExpression.evaluate(source));}

???????? 再次运行main()方法将重新得到前面相同的输入结果。

?

热点排行