我需要检查环境id是否与xml文件中的db id匹配,因此我知道要更新哪些db元素。我有代码:
//get tag
Node environment = doc.getElementsByTagName("environment").item(0);
//check environment id
if(environment.getEnvironmentID().equals())
{
}
我所拥有的代码是针对nodelist的,并且其中的元素将被更新。我只是不知道如何完成支票以获得正确的支票。
xml文件:
<defaultenv id = "default">
<Environment id = "name">
<Db id = "db1">
<Website> BlueHouse.co.uk</Website>
</Db>
</Environment>
</Defaultenv>
有人能指出我正确的方向吗?
答案 0 :(得分:1)
由于您正在使用org.w3c.dom.Node
,因此请使用以下代码段之一来获取环境id
。
//get tag
// ** I use "Environment" with upper E because XML is case-sensitive
Node environment = doc.getElementsByTagName("Environment").item(0);
//check environment id
if(environment.getAttributes().getNamedItem("id").getNodeValue().equals("..."))
{
}
如果您不介意使用代码,您也可以这样做:
//get tag
Node environment = doc.getElementsByTagName("Environment").item(0);
//check environment id
// ** I cast the Node instance (ie environment) into an Element instance
if ( ((Element)environment).getAttribute("id").equals("...") )
{
}
答案 1 :(得分:0)
我正确理解你的问题。感觉就像你想要将环境标签和DB标签的id属性与一些默认值或它们之间进行比较。 根据给出的XML示例,下面的代码将为您提供两个tags的id值。希望它可以用于比较。
Node environment= doc.getElementsByTagName("Environment").item(0);
NamedNodeMap nodeMap = environment.getAttributes();
Node idAttr = nodeMap.getNamedItem("id");
String envAttrValue = idAttr.getTextContent();
Node dbNode = node.getChildNodes().item(0);
NamedNodeMap dbNodeMap = dbNode.getAttributes();
Node dbIdAttr = dbNodeMap.getNamedItem("id");
String dbAttrValue = dbIdAttr.getTextContent();