java - Hibernate 加入保存级联

标签 java mysql spring hibernate

假设我有一个实体 A,它与 B 具有 oneToMany 关系,具有级联 ALL 类型,默认情况下是惰性的。 我现在的问题是,发生了什么,如果现在我修改 A,但 B 在 session 中保持完全相同,并且我保存 A。Hibernate 将与 B 进行连接,他将更新数据库,或者他将 B 作为 hibernate 代理?

我们的应用程序遇到了一些问题,因为当我们保存顶级实体时 MySQL 提示最大连接数。

  ERROR 1116 (HY000): Too many tables; MySQL can only use 61 tablesin a join

问候。

最佳答案

我有一个类似的问题,但有急切的关系。一旦我们将它们更改为懒惰,问题就消失了。

在您的示例中仅更新表 A 时,Hibernate 不应与其他惰性相关表进行连接,但最好打印出生成的 SQL 并查看它是否以及如何在您更改提取设置时发生变化。

关于java - Hibernate 加入保存级联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28670987/

相关文章:

spring - 如何配置 glassfish 以使用应用程序托管实体管理器?

java - APACHE POI 4.1 : Set cell background color from hex code

java - Java 中的继承 - "Cannot find symbol constructor"

java - Android Renderscript 速度不一致

mysql - 以最佳方式更新表数据

mysql - 在 MySQL 中存储 INSERT 的日期和时间

MySQL - 选择中的子查询

java - 运行sbt并得到 `unresolved dependency: Received fatal alert: access_denied`

java - servlet 收到 AJAX 调用但未给出响应

重复来自 spring boot rest Controller 的 JSON 响应