实体管理器是如何管理的?
我读了几篇文章
http://codeidol.com/java/netbeans/Persistence-EntityManager/Interacting-with-an-EntityManager/
我遇到了几个问题要问!
在使用
Customer cust = entityManager.find(Customer.class, 2);如果我们实际上更改了当前customer bean的主Id,
问题1:实体管理器仍然知道要管理什么吗?因为它使用主键来查找所有数据?
问题2:如果我们完全更改数据并持久化,这就是“在数据库中插入数据的行为”,感觉上是不同的,那么原始对象和持久化对象会相同吗?它是否仍然由实体管理器管理?即使一切都会更新?数据库中会有两个对象还是一个对象?
只是一些思考的食粮!
发布于 2011-08-09 05:48:49
永远不要更改持久实体的主键值:-它不会工作-即使它这样做了,这个主键的所有外键约束无论如何都会被打破
主键应该是不可变的。
https://stackoverflow.com/questions/6988992
复制相似问题