0

您是在抽象超类中添加@PersistenceContext注释,还是将其添加到每个具体的 SqlRepository 中,然后将引用传递给超类的构造函数?有什么优点/缺点吗?

@Stateless
public abstract class AbstractSqlRepository<T> implements Repository<T> {

    @PersistenceContext
    private EntityManager entityManager;
...
4

1 回答 1

0

如果您有多个持久性单元,您可能希望重新考虑将实体管理器放在基类中。您将把所有子类耦合到同一个持久性单元。

就个人而言,我会将实体管理器定义为高于数据层的层。这将使您更好地控制交易。此外,如果您在父类中没有它,您可以使用不同的持久性单元。

于 2012-10-26T19:54:29.590 回答