【发布时间】:2015-01-25 23:05:34
【问题描述】:
我想知道将 EntityManager 对象的引用传递给我的所有 BusinessLayer 方法是否是反模式。
public void setCost(EntityManager em, int idProduct);
public void updateProduct(EntityManager em, ProductEntity product);
我发现这种模式很实用,因为它让我可以管理多个方法的分组来构建个性化事务...
public void initProduct(EntityManager em, ProductEntity product) {
...
tx.begin()
...
setCost(em, idProduct);
updateProduct(em, product);
...
tx.commit();
}
PS:
- 我没有使用 Spring 框架。
- 基于 JPA 的业务层和数据访问层旨在 在桌面应用中使用。
谢谢
【问题讨论】:
-
我唯一能看到这有任何用途的情况是,如果您不时需要不同的 entityManager,例如使用不同的数据源。
标签: java jpa transactions entitymanager