【问题标题】:Hibernate: How can I know the children is dirty or not?Hibernate:我怎么知道孩子脏不脏?
【发布时间】:2013-06-01 00:35:38
【问题描述】:

有两个父/子关系实体。 并且只有孩子的 hbm.xml 文件中的映射配置。像这样:

    <many-to-one 
    name="child"
    class="com.Child"
    update="true"
    insert="true"
    cascade="save-update">
        <column not-null="false" name="PARENT_ID"></column>
   </many-to-one>

父母的 hbm.xml 中没有 &lt;one-to-many&gt; 配置。

现在我想使用 ClassMetaData 从实体中获取所有属性来验证它是否脏。但我无法从 ClassMetaData 获取 child 属性,因为它没有配置。

但是当我使用 session.saveAndUpdate(parentEntity) 时,Hibernate 知道孩子是脏的并且可以更新脏的子实体。 Hibernate 是如何做到这一点的?无论如何我可以获得子实体的脏状态吗?

【问题讨论】:

标签: hibernate


【解决方案1】:

一些谷歌搜索表明没有“简单”的方法。您需要为此使用hibernate interceptorsthis blog 中解释了您的用例。

【讨论】:

    猜你喜欢
    • 2011-02-10
    • 1970-01-01
    • 1970-01-01
    • 2012-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-19
    相关资源
    最近更新 更多