2013-02-19 84 views
0

我有這種結構的XML文件:與不同的標籤JAXB解組XML元素

<root> 
    <elements> 
     <element> 
      <id>1</id> 
      <tag1>some string</tag1> 
     </element> 
     <element> 
      <id>1</id> 
      <tag2>some other string</tag2> 
     </element> 
    </elements> 
</root> 

是否有可能那種XML的數據編出的一個對象。問題是每個元素都有一些獨特的標籤。我正在考慮把這些值放在列表中,但我不知道該怎麼做。

+0

使用地圖<字符串,字符串> – BobTheBuilder 2013-02-19 10:08:40

回答

2

是的,它可能很容易,爲元素標籤製作一個Element對象,並在其中放置所有可能的子標籤,如果JAX-B在您的XML中找不到它們,它將使它們保持爲空,所以您會得到一個體面的對象。

一個簡單的JAX-B的介紹可以在這裏找到:http://www.mkyong.com/java/jaxb-hello-world-example/

如果元素標籤的可能的子標籤實在太多了,迅速改變或未知的,你可以嘗試去用一個<字符串,字符串>結構,就像這裏描述的那樣:How to serialize HashTable<String, String> to XML using JAXB?

但是對於大多數情況下,我會選擇第一個選項。