我有一个看起来像这样的片段(片段)。
<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>
答案 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文档似乎更容易。