【发布时间】:2015-04-19 15:47:44
【问题描述】:
我正在使用带有 Spring 框架的 Hibernate,并且遇到了 Opportunistic Locking,所以我有一个基本问题:
Hibernate 是否会在调用其 setter 时立即考虑对象“已更改/脏”,例如:theEmployee.setAge(32) 因此,即使 age 已经是 32,它也会被视为“已更改”,或者会Hibernate 发现即使调用了 setter,对象实际上并没有改变?
也就是说,如果我想防止不必要的写入,是否需要编码:
if (theEmployee.getAge() != age) { theEmployee.setAge(age); }
...或者编码就足够了:theEmployee.setAge(age);
【问题讨论】:
-
查看此链接了解详细解释stackoverflow.com/questions/82429/…