Java xml到对象类

时间:2016-08-12 22:36:19

标签: java xml

我有一个看起来像这样的片段(片段)。

<struct>
    <member>
        <name>last_name</name>
        <value>
            <string></string>
        </value>
    </member>
    <member>
        <name>payment_method</name>
        <value>
            <int>1</int>
        </value>
    </member>
</struct>

如何将其转换为java类?它有超过100个元素和40个这样的转换,所以手动解析它是不可能的:)

问题是解析器无法识别名称和值标签中包含的值,或者我不知道如何使用它。所有在线示例都假设您有<age>78</age>而不是<name>age<name/> <value>78</value>

2 个答案:

答案 0 :(得分:0)

使用maven-jaxb2-plugin。它生成unsexy代码以从XML模式(XSD文件)解析XML。如果您没有XSD,可以从this online generator的样本数据生成XSD。 因此,在生成XSD后,将插件添加到POM并进行配置(XSD和生成代码的包在哪里),您将能够运行mvn generate-sources。 它将生成一组类,主要在一个Java文件中,能够解析所有XML。它生成一个POJO的运行时结构,表示可以遍历以提取任何必要信息的XML节点。

答案 1 :(得分:0)

创建一个接受所有值的类并从头开始创建一个可以使用jax或其他解析器轻松解析的新XML文档似乎更容易。