我正在開發一個基於EJB的應用程序,其中我有實用程序類。爲了實現它,我有兩個選擇:工具類:EJB Session還是Simple Object?
- 創建一個簡單的對象JpaUtility,在我把GETALL方法 靜態的,以便能夠從類名訪問(JpaUtility.getAll)
/*簡單對象效用*/
public class JpaUtility
{
public static List<T> getAll(EntityManager manager, Class<T> clazz) {
return manager.createQuery("...."); }
}
- 創建EJB會話包含GETALL方法,然後注入並在需要時使用 。
/* EJB程序*/
@Stateless
public class JpaUtility
{
@PersistentContext
private EntityManager manager;
public static List<T> findAll(Class<T> clazz) {
return manager.createQuery("...."); }
}
的問題是:哪一個提供最佳性能?簡單對象還是EJB無狀態?換句話說,與簡單對象相比,EJB提供了什麼?
你測試過嗎?您需要考慮您將以這種或那種方式將PersistenceContext注入到您的代碼中,因此您需要確定幫助器類是否僅從設計角度或性能角度來看有幫助。測試出來並看到 – kolossus