spring—如何在hibernate中使用postgresql数据库获取锁超时

xpcnnkqh  于 2021-07-24  发布在  Java
关注(0)|答案(0)|浏览(236)

我想用postgresqlserver在spring数据jpa中获得锁(悲观的写)超时。我试过了 @QueryHints 但博士后似乎忽视了这一点。

@QueryHints(value = {@QueryHint(name = "javax.persistence.lock.timeout", value = "0")})
@Lock(LockModeType.PESSIMISTIC_WRITE)
@Query("select s from Student s where s.email = :email")
Optional<Student> findWithForUpdate(@Param("email") String email);

锁定超时值为0时,它会在nowait后面附加 SELECT FOR UPDATE 如果已经存在锁,则lock命令立即超时。
如果我给 javax.persistence.lock.timeout 假设“20”它不超时。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题