java - JAXB, XJC -> 创建多个类文件

标签 java xml jaxb xjc

我是第一次使用 JAXB 和 XJC。

我想从 XML 文件生成 Java 类,所以我使用 this online helper从 XML 文件生成架构。

之后我只是使用这个命令行来生成 Java 类:

xjc myschema.xsd

它可以工作,但我只收到一个 Java 文件和其中的许多静态类。请问这是否可以生成许多 java 文件,每个文件只包含一个类?

谢谢

最佳答案

默认 JAXB (JSR-222)将为嵌套的复杂类型创建静态内部类以防止类名冲突。您可以使用外部绑定(bind)文件来禁用此行为。

binding.xml

绑定(bind)文件允许您自定义如何从 XML 模式生成 Java 类。

<jaxb:bindings
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
    version="2.1">
    <jaxb:globalBindings localScoping="toplevel"/>
</jaxb:bindings>

XJC 通话

-b 选项与 XJC 命令一起使用以指定绑定(bind)文件。

xjc -b binding.xml myschema.xsd

更多信息

关于java - JAXB, XJC -> 创建多个类文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13175224/

相关文章:

java - 通过eclipse添加项目到weblogic时出现SAXNotRecognizedException

java - 更改一个数组列表项相对于另一个数组列表项的顺序

java - 如何使用 Maven 插件在构建路径中添加多个生成的文件夹

java - JAXB @XmlElements 有 minOccurs = 1

maven - BadCommandLineException 与 maven cxf XJC 插件

java - 测试用例空时间异常

Java找到两条线的交点

xml - 将 xml/CDATA 嵌套到 xml 文件中?

c# - XML 反序列化为列表

带有 DOMDocument 或 SimpleXML 的 xpath 结果上的 PHP xpath