我正在尝试 JPA 对数据库锁定的支持,以避免记录中的并发请求。在我的场景中,我需要使用悲观锁。我使用以下方法得到了这个:
EntityManager em;
...
Map<String,Object> props = new HashMap<String,Object>();
props.put("javax.persistence.lock.timeout", 0);
em.find(MyEntity.class, id, LockModeType.PESSIMISTIC_READ, props)
但是通过这种方法,我处理的是 aLockTimeoutException
而不是 a PessimisticLockException
。具体怎么处理PessimisticLockException
?