java - Hibernate 级联与逆向关系

标签 java hibernate jpa orm hibernate-mapping

我没有那么多地使用 hibernate。所以,当 inverse 和 cascade 出现时,卡在了一个点上。我知道 inverse 告诉 hibernate 关于负责更新它们关系的拥有实体,Cascade 会告诉 hibernate 首先保存实体,然后保存它的依赖实体。

我只是想知道是否必须在同一实体中声明 cascasde="all"和 inverse="true"。我们可以通过反向和级联属性在另一个实体中声明一个拥有实体吗?请阐明这一点?

谢谢

最佳答案

级联仅在从父级传播到子级(一对多或一对一)时才有意义。这对多对一或多对多没有意义,因为您不想在删除子项时删除父项。

Inverse 用于双向关联,通常它与 cascade 在同一侧,但那是因为 many-to-one side is much more efficient (控制关联)而不是一对多。

您还可以与级联建立一对多的单向关联,因为这是单关联方,所以它也是控制它的一方。

关于java - Hibernate 级联与逆向关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25251111/

相关文章:

java - 使用 Jetty Content Exchange 和 SSL 时是什么原因导致 "broken pipe"?

java - 来自 Java EE 类(class)测试 : JPA mapping with annotations mixed with XML. 哪个优先级更高?

java - 一个存储用户上传图片的Hibernate+Spring+MySQL项目操作性能调优

java - JPA问题@OneToMany - 如何从数据库获取特定对象?

spring - 运行 spring 应用程序时出现 java.lang.NoClassDefFoundError

java - 具有单表继承的 JPA 存储库( hibernate )

Java8 流 : generic logger method in stream

java - 在 RxJava 中什么算作异步边界?

java - 子类和 hql

hibernate - Hibernate映射在具有别名 “h002-01”的Grails中为列生成错误