java - 如何从 xml 生成 pojo 类(在 jvm 中)?

标签 java xml pojo

我有一个 xml :

<Employee>
   <name>xyz</name>
   <age>50</age>
   <salary>111</salary>
</Employee>

现在我如何从这个 xml 在 jvm 中动态创建一个类?如何为这个类创建setter/getter?

注意::将来这些 xml 元素可能会增加。

最佳答案

通常,用于 XML 绑定(bind)的 java 源文件是使用某些 XML 模式或预期数据格式的 DTD 生成的。

在这种情况下,建议定义 XML 模式,例如如下所示:

<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      targetNamespace="http://test.org/test/Employee">
<xsd:element name="employee">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element name="name" type="xsd:string" />
            <xsd:element name="age" type="xsd:integer" />
            <xsd:element name="salary" type="xsd:double" />
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

此 schema.xsd 可用作 JAXB(xjc 命令)或 Castor 等生成器数量的输入,如 here 所示。

生成器输出是可配置的,新源应该易于集成到现有项目,或编译和加载。此主题已讨论here

关于java - 如何从 xml 生成 pojo 类(在 jvm 中)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21480546/

相关文章:

.net - 在 C# 中使用模式进行 XML 解析

c# - 按属性获取元素过滤

java - Flink readCsvFile 方法与 pojoTypes

java - If 语句 [help] Java 新手

java - 类转换异常 : class can not be case to itself on android using dagger

java - 获取 JComboBox 项目字符串表示形式

object - 初始化时,翻新会跳过数据类的init {} block

java - 以最快的方式将大量数据从vertcicadb表批量加载到mysql表

java - 从应用程序内永久添加按钮

java - 在 hibernate POJO 类中实现 java.io.Serializable