Java:XML到对象(或数组)

Por*_*oru 2 java xml object

我怎样才能将XML文档转换为Java对象(或数组)?我像这样重写XML:

DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dFactory.newDocumentBuilder();

Document doc = dBuilder.parse(new File("file.xml"));
doc.getDocumentElement().normalize();
Run Code Online (Sandbox Code Playgroud)

现在我想将XML作为对象(或数组),但我该怎么做呢?是否有任何方法或教程或课程可以做到这一点?

Jig*_*shi 9

使用XStream.

对象到XML

Person joe = new Person("Joe", "Walnes");
joe.setPhone(new PhoneNumber(123, "1234-456"));
joe.setFax(new PhoneNumber(123, "9999-999"));
String xml = xstream.toXML(joe);
Run Code Online (Sandbox Code Playgroud)

生成的XML如下所示:

<person>
  <firstname>Joe</firstname>
  <lastname>Walnes</lastname>
  <phone>
    <code>123</code>
    <number>1234-456</number>
  </phone>
  <fax>
    <code>123</code>
    <number>9999-999</number>
  </fax>
</person>    
Run Code Online (Sandbox Code Playgroud)

XML到对象

Person newJoe = (Person)xstream.fromXML(xml);
Run Code Online (Sandbox Code Playgroud)

另见


yeg*_*256 6

您将需要JAXB解组.