我必须关闭每个EntityManager吗?

我刚刚开始将自己的持久性框架迁移到JPA。

鉴于持久性框架隐藏了很多问题,我想知道不关闭EntityManagers是否会造成资源泄漏,或者框架是否会为我收集并关闭它们。

我打算在所有地方关闭它们,但是我必须关闭吗?

目前使用TopLink只是因为它可以轻松地与NetBeans一起使用,但是很高兴调查其他JPA提供程序。

回答:

这取决于您如何获得它。

如果使用EntityManagerFactory创建它,则无论使用哪种框架,都必须将其关闭。

如果使用依赖注入(例如,使用EJB和@PersistenceContext批注)获得了它,则不应该手动关闭它(AFAIK会导致RuntimeException)。

以上是 我必须关闭每个EntityManager吗? 的全部内容, 来源链接: utcz.com/qa/405118.html

回到顶部