hibernate - 什么是 hibernate 中的数据混叠效应?

标签 hibernate

我打算在 hibernate 中使用这个 StatelessSession 接口(interface)。但是不知道解释here有什么数据混叠效果

最佳答案

考虑像这样的数据

table parent
id | name
---------
1  | 'foo'

table child
id | parent_id
--------------
1  | 1
2  | 1

和一个查询
session.query("from child").list();

那么以下将失败 StatelessSession session但不适用于 Session session
childs.get(0).getParent().setName("bar");

assertEqual("bar", childs.get(1).getParent().getName());

更新:

StatelessSession 不会“记住”它加载的对象,因此在脱水第二个 child 时,它不知道它已经创建了它所引用的父对象,并将创建另一个具有相同值但引用不同的父对象。

关于hibernate - 什么是 hibernate 中的数据混叠效应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13524097/

相关文章:

java - Hibernate 标准,两个实体

java - 使用继承时存储 'employee code' 的公共(public)值

java - 如何在 jpa 持久性 xml 文件中自动创建表?

sql - hibernate/ Spring : Pessimist vs Optimist locking?

java - Hibernate 隔离集成测试

sql - JPA Query - 位置参数中的 sql 注入(inject) jpa native 查询

java - Spring Boot + Intellij Idea + Hibernate - 奇怪的堆栈跟踪

java - Spring Boot 给出错误创建名为 'entityManagerFactory' 的 bean

java - JPA @OneToMany 将集合转换为其大小

java - 当我的连接被管理禁用时提交的事务