Hibernate 中的自引用一对一映射

发布于 2024-12-03 00:14:12 字数 570 浏览 2 评论 0原文

我有一个 A 类,它有一个属性类型,指示它是收据还是交货。收据可以映射到单个交付,反之亦然。现在考虑收货交易和交付交易是同级交易。
因此,A 类有一个类型为 A 的同级。“A”及其同级具有上面建立的一对一关系。

Class A {  
    private A sibling;  
}

<hibernate-mapping>  
    <class name="A" table="A">  
        <id name="Id" type="java.lang.Integer" column="id">  
            <generator class="native"></generator>  
        </id>  
        <one-to-one  name="sibling" class="A" lazy="proxy" />  
    </class>  
</hibernate-mapping>  

我无法找出创建自引用一对一映射的方法。

I have a class A which has a property type indicating whether it is a receipt or a delivery. A receipt can be mapped to a single delivery and vice-versa. Now consider that the receipt transaction and the delivery transaction are siblings.
So class A has a sibling of type A. "A" and its sibling have a one-to-one relationship as established above.

Class A {  
    private A sibling;  
}

<hibernate-mapping>  
    <class name="A" table="A">  
        <id name="Id" type="java.lang.Integer" column="id">  
            <generator class="native"></generator>  
        </id>  
        <one-to-one  name="sibling" class="A" lazy="proxy" />  
    </class>  
</hibernate-mapping>  

I am unable to figure out a way to create a self-referencing one-to-one mapping.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

和我恋爱吧 2024-12-10 00:14:12

使用多对一单向关联。请参阅单向关联 在 hibernate 参考文档中。

<hibernate-mapping>   
    <class name="A" table="A">   
        <id name="Id" type="java.lang.Integer" column="id">   
            <generator class="native"></generator>   
        </id>   
        <many-to-one  name="sibling" class="A" cascade="all" />   
    </class>   
</hibernate-mapping> 

您可以阅读这些答案以获取有关

Use the many-to-one unidirectional association. See Unidirectional associations in the hibernate reference documentation.

<hibernate-mapping>   
    <class name="A" table="A">   
        <id name="Id" type="java.lang.Integer" column="id">   
            <generator class="native"></generator>   
        </id>   
        <many-to-one  name="sibling" class="A" cascade="all" />   
    </class>   
</hibernate-mapping> 

You can read those answers for more information on

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文