您可以使用XPath查询,东西像/a/b/property[@name='driverClass']/text()
这将返回t的property
节点,其具有的属性name
等于driverClass
的EXT值,这是一个子b
,这是a
例如儿童...
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
Document doc = dbf.newDocumentBuilder().parse(JavaApplication244.class.getResourceAsStream("/Test.xml"));
XPathFactory xf = XPathFactory.newInstance();
XPath xPath = xf.newXPath();
XPathExpression expression = xPath.compile("https://stackoverflow.com/a/b/property[@name='driverClass']/text()");
String value = expression.evaluate(doc);
System.out.println(value);
} catch (ParserConfigurationException | SAXException | IOException | XPathExpressionException exp) {
exp.printStackTrace();
}
其输出oracle
查看w3schools, xPath和How XPath Works了解更多详情
您是否想要所有具有attribute或ju的节点st属性'节点? “属性”节点是否需要是'a'的孩子的'b'的孩子? – MadProgrammer
我只需要属性节点值使用属性值 – codeCrack
是的属性节点需要b的孩子,这是一个 – codeCrack