gpt4 book ai didi

java - HyperJAXB:如何始终使用 @OneToOne 而不是 @ManyToOne

转载 作者:行者123 更新时间:2023-12-01 13:12:26 25 4
gpt4 key购买 nike

HyperJAXB 为 XSD 1: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 中放入什么来实现这个目标?

最佳答案

您可以将默认情况下的 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 是有原因的。它更安全、更容易处理。

关于java - HyperJAXB:如何始终使用 @OneToOne 而不是 @ManyToOne,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22746126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com