当前位置: 首页 > 知识库问答 >
问题:

如何定制JAXB生成的java注释?

汤昊
2023-03-14

JAXB为每个属性生成@XmlAttribute注释。例如,属性

    <xsd:attribute name="agent_id" use="required" type="xsd:unsignedInt">
    <xsd:annotation><xsd:documentation xml:lang="en">Foreign key reference to Agent.agent_id, Included in composite primary key</xsd:documentation></xsd:annotation>
    </xsd:attribute>

转换为带注释的java对象属性

@XmlAttribute(name = "agent_id", required = true)
@XmlSchemaType(name = "unsignedInt")
protected long agentId;

但是,如果属性在名称中没有下划线,则@Xml属性中的名称字段丢失(因此##默认)。我想自定义JAXB绑定,以便也生成没有下划线的名称的注释。有什么建议吗?

谢谢!Johannes

共有1个答案

富勇军
2023-03-14

你可以写一个XJC插件来添加这个行为:

  • http://weblogs.java.net/blog/kohsuke/archive/2005/06/writing_a_plugi.html

就JAXB(JSR-222)实现而言,结果XML将是相同的。

 类似资料:
  • MOXy BeanValide使我能够将验证添加到我的JAXB类中。 使用MOXy的“Bean Validation Plugin”,我可以根据预先存在的模式中的限制/方面在生成的JAXB类中进行Bean验证。 但是,有没有任何方法可以基于JAXB注释的java类的Bean验证注释生成带有限制/facetsb的模式? 在“模式优先”生成java时,XJC有一个方便的插件体系结构,但是是否有任何等效

  • 问题内容: 我正在使用Java 6,JaxB 2和SpringSource Tool Suite(与Eclipse相同)。我编写了一些Java类,使用JaxB从中生成XML模式。但是,我注意到为了使用JaxB从Java对象生成XML文档的功能,我需要一个ObjectFactory。 如何生成ObjectFactory而不会浪费我现在已有的类? 问题答案: 更新 这个问题可能指的是创建一个角色的作用

  • 手工编写类和从scheme生成JAXB类的优缺点是什么。我开始新的项目,并希望了解如何选择避免陷阱。 我有复杂的XML结构(基本上是FreeSwitch配置定义),包括不同XML级别上的可重复类型。

  • 我一直在使用 annox 在我的 jaxb 生成的类上添加注释(通过绑定文件),但我找不到直接在包上添加注释的方法(包信息.java)。 我一直在尝试在bindings.xml中这样做: 但是jaxb抱怨说< code>annox:annotate不应该在那里。 还有别的方法吗?

  • 我使用XML模式,并用xjc生成java文件,以便与JAXB一起使用。生成的java文件具有默认的@XmlAccessorType(XmlAccessType。字段)指定。我想改变这一点,使生成的java文件具有带注释的属性访问(@XmlAccessorType(XmlAccessType。属性),并且不在字段级别生成@XmlElement / @XmlAttribute批注。有没有办法通过自定义

  • 我使用jaxb2 maven插件从给定的XSD生成JaxB类。它很好用。但现在我想使用java。util。在生成的类中是可选的。但是JaxB生成的类没有可选项。所以我不得不对每个变量进行空检查。 有人知道必须如何配置jaxb2 maven插件才能使用java吗。util。可选择的 谢谢你的帮助!