我正在做一个将一堆 xml 导入 mysql 数据库的项目。我发现工具 hyperjaxb3 作为 maven 插件工作并生成 jpa / jaxb 注释的 java 类,我可以使用这些类来编组 xml 并将其吸入,但它会创建自己的主键字段。我如何摆脱它以支持架构中存在的字段?
问问题
558 次
1 回答
0
特别是下面引用的部分:
2.2.2.1。自定义标识符属性 Identifier 属性是可自定义的。您可以强制 Hyper-JAXB 使用现有属性作为标识符,而不是生成新的 idInternal 属性。为此,请将 @hyperjaxb.hibernate.id 包含到属性 javadoc 注释中(来自简单测试):
<xsd:complexType name="EntryType"> <xsd:sequence><!-- ... --></xsd:sequence> >
<xsd:attribute name="id" type="xsd:string"> <xsd:annotation> <xsd:appinfo>
<jaxb:property>
<jaxb:javadoc> @hyperjaxb.hibernate.id unsaved-value="null" generator-class="uuid.hex"
</jaxb:javadoc>
</jaxb:property>
</xsd:appinfo>
</xsd:annotation> </xsd:attribute> </xsd:complexType>
如果您使用需要参数化的 id 生成器,请在 @hyperjaxb.hibernate.generator-param 中包含所需的参数。
于 2013-08-01T21:05:16.963 回答