1
List esns=session.createQuery("from Pool e where e.status=:status "+
                        "order by uuid asc")
                        .setString("status", "AVAILABLE")
                        .setMaxResults(n)
                        .setLockMode("e", LockMode.PESSIMISTIC_WRITE)
                        .list();

我已经编写了上述查询,但是它没有生成for update查询并且正在同时更新。

我使用的是 3.5.2 版本,它在 Criteria API 中有一个错误,查询 API 中是否也存在相同的错误,或者我做错了什么?

4

2 回答 2

3

setLockOptions 工作正常。这是和这个一样的错误

于 2010-06-16T13:58:29.660 回答
1

尝试使用 LockModeType.PESSIMISTIC_FORCE_INCREMENT,看看这个解决方案

于 2015-04-30T14:20:21.040 回答