2016-08-24 85 views
2

如何使用JAXB或任何其他方式使用xml字符串創建java對象類?我想傳遞xml字符串並生成一個映射類。 我有一個嵌套的串像這樣:使用JAXB將Xml字符串轉換爲對象

<?xml version="1.0"?> 
    <tag1> 
     <tag2> 
      <tag3> 
       <tag4>read me</tag4> 
      </tag3> 
     </tag2> 
    </tag1> 
+0

你有它定義XML文檔的結構的XML架構? – VGR

+0

不,我得到一個xml字符串,我想通過對象解組。 –

回答

1

假設你的XML不會隨時間結構的改變,你可以生成從像http://www.freeformatter.com/xsd-generator.html工具的XSD文件。

這給了我:

<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    <xs:element name="tag1"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="tag2"> 
      <xs:complexType> 
      <xs:sequence> 
       <xs:element name="tag3"> 
       <xs:complexType> 
        <xs:sequence> 
        <xs:element type="xs:string" name="tag4"/> 
        </xs:sequence> 
       </xs:complexType> 
       </xs:element> 
      </xs:sequence> 
      </xs:complexType> 
     </xs:element> 
     </xs:sequence> 
    </xs:complexType> 
    </xs:element> 
</xs:schema> 

然後你可以在這個架構存儲在本地文件系統上,併發起命令xjc myFile.xsd這將產生JAXB文件給你。

更多XJC細節,here