使用Java使用XPath检索重复的子节点时出现的问题

时间:2018-11-23 02:31:15

标签: java xpath

我具有以下结构,其中父节点是重复节点-假设有5个节点。在这5个父节点中,我有5个具有5个属性的重复子节点。我需要根据属性的值来检索属性的值。

可以说,其中一行的属性值之一为"Credit card",而其他4行的属性值的值为"Debit card"。当值为== "Credit card"时,我需要采用其他属性的值。我测试了attribute value == "Credit card"仅存在一行,而attribute value == "Debit card"

至少存在一行

所以基本上我需要为每个父实例拥有5个子节点。

我能够使用正确的XPath检索5个父节点实例,但是我使用getchild()方法检索了子节点,但是我得到的子节点为25(如果我们有5个父节点-5 * 5),而不是5个节点。基本上,我无法容纳子节点(计数5)。无论使用哪种方式,我总是检索所有父节点下的所有子节点,而不是特定的父节点。

<Parent1>
    <child1>"Attribute-1"=Value "Attribute-2"=Value2 "Attribute-3"="Value3" "Attribute-4"=Value2 "Attribute-5"=Value2</child1>
    <child2>"Attribute-1"=Value "Attribute-2"=Value2 "Attribute-3"="Value3" "Attribute-4"=Value2 "Attribute-5"=Value2</child2>
    <child3>"Attribute-1"=Value "Attribute-2"=Value2 "Attribute-3"="Value3" "Attribute-4"=Value2 "Attribute-5"=Value2</child3>
    <child4>"Attribute-1"=Value "Attribute-2"=Value2 "Attribute-3"="Value3" "Attribute-4"=Value2 "Attribute-5"=Value2</child4>
    <child5>"Attribute-1"=Value "Attribute-2"=Value2 "Attribute-3"="Value3" "Attribute-4"=Value2 "Attribute-5"=Value2</child5>
</Parent1>
<Parent2>
    <child1>
    <child2>
    <child3>
    <child4>
    <child5>
</Parent2>
<Parent2>
    <child1>
    <child2>
    <child3>
    <child4>
    <child5>
</Parent3>
<Parent4>
    <child1>
    <child2>
    <child3>
    <child4>
    <child5>
</Parent4>
<Parent5>
    <child1>
    <child2>
    <child3>
    <child4>
    <child5>
</Parent5>

0 个答案:

没有答案