首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HyperJAXB:如何使用always @OneToOne而不是@ManyToOne

HyperJAXB:如何使用always @OneToOne而不是@ManyToOne
EN

Stack Overflow用户
提问于 2014-03-30 23:51:53
回答 1查看 297关注 0票数 0

HyperJAXB为XSD1:1关系生成@ManyToOne注释,如下所示:

代码语言:javascript
复制
<xs:element name="typeName" type="otherType" />

代码语言:javascript
复制
<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中放些什么来实现这个目标?

EN

回答 1

Stack Overflow用户

发布于 2014-03-31 01:55:34

默认情况下,可以将X:1切换为全局一对一:

代码语言:javascript
复制
<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是有原因的。它更安全,也更容易处理。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22746126

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档