2013-07-26 78 views
0

我在我的代碼中使用以下語句。EntityManager JPA 1.0 LockModeType行爲

entityManager.lock(employee,LockModeType.WRITE);

我正在使用JPA 1.0,並且還使用EJB 3.0無狀態會話Bean來管理事務,也使用SQL Server作爲數據庫。

目前,我的實體Entity中沒有任何版本的列。

我們是否需要在事務完成後顯式釋放鎖或者EJB已經處理了這個問題?

回答

0

的Java EE 6的LockModeType.NONE(JPA 2有它),你可以手動釋放鎖:em.lock(obj, LockModeType.NONE)

我覺得事務提交應該釋放被收購那些致力於對象所有的鎖。 EJB在那裏沒有做任何事情,所有事情都去了jpa,它是impl。

支票this以及