當使用EntityManager
時,最好是在PersistenceContext
之間獲得一個實例並在我的程序中傳遞它,或者是否應該多次使用依賴注入?EntityManager初始化最佳實踐
在我的應用程序中,每個客戶端都將與有狀態會話bean進行通信,並且每個bean在某個時刻需要使用EntityManager
。 我想bean方法是同時調用的(但我甚至不確定)。 如何保證我以線程安全的方式使用EntityManager
?通過交易?在每個bean中有一個單獨的實例?
對不起,如果這是令人困惑的,我是新來的EJB/JPA,我找不到任何材料解決我的問題。
感謝您的回答。所以我的有狀態bean應該有一個'EntityManager'屬性,並通過參數傳遞給任何其他訪問數據庫的對象? – 2009-12-28 19:24:32
是的,如果需要的話。但是,在使用EJB時,最好只從會話bean本身(無狀態或有狀態)訪問EntityManager API;那麼你永遠不需要傳遞EntityManager實例。當然,其他類型的託管bean(如MDB)也可以做同樣的事情。 – 2009-12-29 02:15:13