gpt4 book ai didi

java - JPA+ Hibernate 中的级联

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

以下是我的实体:



public class EntityA {

//...
@OneToMany(mappedBy="entityA")
private Set entitieBs;

}

public class EntityB {

//...
@ManyToOne(cascade=CascadeType.PERSIST)
private EntityA entityA;

}

with accessors methods(getters and setters).

我打算每次在数据库中保存新的 EntityB 对象(将 EntityA 对象设置为“父级”)时,如果我调用 <在新的 EntityB 的父级上使用strong>EntityA.getEntityBs(),将其添加到结果集合中。但如果我按照我的例子这样做,它就不起作用。

有人知道我错在哪里吗?

谢谢!

<小时/>

这是我如何持久化实体的java代码:


//...some code
EntityB eb = new EntityB();
eb.setEntityA(entityA);
entityManager.persist(entityB);

我想明确表示,我不会将 entityB 添加到 entityA 的实体B 集合中。

最佳答案

这个问题每两天就会有人问一次。

JPA 不会为您维护对象图的一致性。 有责任维护双向关联的双方。如果您提交事务、关闭 session 并重新加载实体,一切都会如您所愿,因为您已经初始化了关联的拥有方。但是,如果您修改内存中关联的一侧,JPA 不会为您修改另一侧。

关于java - JPA+ Hibernate 中的级联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8835669/

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