【发布时间】:2018-09-18 05:06:22
【问题描述】:
update() 方法强制更新 数据库中的对象,总是调度 SQL UPDATE。 ... 它 item 对象在它之前或之后被修改都没有关系 传递给更新()。 ... Hibernate 始终将对象视为脏对象 并安排一个 SQL UPDATE.,它将在刷新期间执行。上 另一方面,merge() 首先查询数据库,而不是 如果状态没有改变,则执行更新。
我的脑海里浮现出一个疑问:
Hibernate(或任何 JPA 实现)如何判断实体的状态是否已更改,从而需要更新操作?
我们应该实现 equals 或 hashcode 方法来帮助 Hibernate 这样做吗?
如果不实施这些方法怎么办?
【问题讨论】: