我正在从Hibernate 3.6.10迁移到4.2.3。
如果涉及在实体上使用OPTIMISTIC_FORCE_INCREMENT锁,我会注意到这两个版本之间的行为差异。
假设我有一个版本= 0的现有实体。如果我然后执行以下操作:
由于我使用DTO将对象传回客户端,因此这种4.2.3行为对我来说是个大问题。从实体到dto的转换在刷新和提交之间完成(步骤4和5)。使用4.2.3这将导致客户端看到版本的过时版本,这是非常不受欢迎的。
我可以做些什么来调整这种行为?如果没有,这会是一个错误吗? (它肯定不向后兼容)。
我希望如果在flush和commit之间没有对实体进行修改,那么在执行提交时就不会有进一步的数据库更新,或者我错了吗?
感谢所有帮助! 提前致谢, 亲切的问候, Franck de Bruijn