是否可以通过Spring JpaTemplate方法使用PESIMISTIC锁定选项?
我知道PESIMISTIC锁定可以使用EntityManager的方法执行,例如
帐户acc = em.find(Account.class,123);
em.lock(acc,PESIMISTIC);
最佳答案
JpaTemplate
上没有专门针对此内容的方法,但是如果需要访问它,可以使用JpaTemplate.execute()
,它接受EntityManager
附带的回调,并且您可以在该回调中做任何您想做的事情。
根据您的具体情况,更好的解决方案可能是使用Spring's transaction layer。如果使用@Transactional
注释DAO(请参见上一链接),则JpaTransactionManager
应该为您管理实体锁定,具体取决于isolation
属性的@Transactional
属性。