我有一个带有一些JPA / Hibernate实体的SEAM应用程序。我现在想知道在哪里放置我的查询,持久性方法。
默认选择似乎将它们放在注入
的会话bean层中@PersistenceContext(...) @Inject EntityManager entityManager;
但我认为我宁愿在实体本身上使用这些方法。什么是专业人士/骗子?
是否有人与实体上的方法而不是会话bean有关于与EntityManager等交互的最佳实践的链接?
最佳, 安德斯
答案 0 :(得分:2)
我没有使用SEAM的经验,但根据我对Java项目的经验,我发现保持bean清除持久化方法最容易。我们通常做的事情:
这样,一切都很分散,很容易进行单元测试。此设置通常不会影响性能。
答案 1 :(得分:1)
是的,这也是我之前所做的。
总的来说,我认为,EJB是疯狂的冗长和样板,但SEAM实际上有点帮助,所以这就是为什么,在我目前的项目中,只是查询和持久的会话bean的额外层使我恼火。如果我可以杀死这一层,我觉得我可以制作一个相当简洁的应用程序......