HyperJAXB为XSD1:1关系生成@ManyToOne注释,如下所示:
<xs:element name="typeName" type="otherType" />或
<xs:element name="typeName" type="otherType" minOccurs="0" maxOccurs="1" />这不是预期的行为,因为它应该生成@OneToOne注释。好的,定制指南描述了你可以通过向每个单独的元素定义添加指令来定制这个行为(参见http://confluence.highsource.org/display/HJ3/Making+schema-derived+classes+ready+for+JPA,“一对一映射”一段)。
这很好,但我需要一个全局配置。有没有人能告诉我,在bindings.xjb中放些什么来实现这个目标?
发布于 2014-03-31 01:55:34
默认情况下,可以将X:1切换为全局一对一:
<jaxb:bindings schemaLocation="schema.xsd" node="/xs:schema">
<hj:persistence>
<hj:default-to-one>
<hj:one-to-one/>
</hj:default-to-one>
</hj:persistence>
</jaxb:bindings>但是请注意,我认为我默认选择@ManyToOne是有原因的。它更安全,也更容易处理。
https://stackoverflow.com/questions/22746126
复制相似问题