我在XML解析和XPath查詢在Java中是絕對新的,我有以下問題:如何使用XPATH從第一個到最後一個滾動標記列表?
我有,我有做一些查詢下面的XML文件:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<status>
<id>0</id>
<message />
</status>
<objectList>
<object id="obj1">
<property1>value</property1>
<property2>value</property2>
<property3 />
</object>
<object id="obj2 ">
<property1>value</sproperty1>
<property2>value</property2>
<property3>value</property3>
</object>
<object id="obj3 ">
<property1>value</sproperty1>
<property2>value</property2>
<property3>value</property3>
</object>
</objectList>
</root>
,我要做的第一件事是採取獨特<id>0</id>
標籤內的價值,我必須使用下面的XPath查詢(和這個查詢工作做好)做到這一點:
XPath xPath = XPath.newInstance("s:Envelope/s:Body");
xPath.addNamespace("s", "http://schemas.xmlsoap.org/soap/envelope/");
org.jdom.Element objectElement = (Element) xPath.selectSingleNode(documentXML);
System.out.println("objectElement: " + objectElement);
(其中documentXML包含以前的XML文檔)
這項工作做得很好,把我的objectElement內對象的值0,其在<id>0</id>
標籤內。
好, 現在我必須執行更復雜的操作(和我有沒有很多想法如何做到這一點),這是下列之一:
正如你可以看到我有一個名爲標籤鏈表類包含3個標籤命名對象表示有一些某些屬性3個Java對象(property1,property2和property3,這將是3個變量到相關的Java objectt)
名單現在,我必須執行以下操作:爲XML文檔中的每個對象標籤創建一個新的Java對象,並把屬性子標籤值的相關值內的新的Java對象
的問題是,我不知道滾動通過我的 標記(從第一個到最後一個)obecjt標記列表
有些想法?有人可以幫助我做到這一點?
TNX
安德烈
XPath是錯誤的,你想選擇所有的objectList /對象節點與id屬性,然後你可以做一個foreach對他們。例如/ root/objectlist/object [@id] –
確定但是...如何知道標記內的
@TonyHopkinson或者我不明白你說什麼我? – AndreaNobili