7

我一直在寻找很多东西来确定 Spring JPA 在打开 EntityManager 连接后如何关闭它。我已经使用 @PersistenceContext 将 Transactional EntityManager 注入到我的 DAO 中,这意味着 spring 将负责为我创建和关闭 EntityManager。但是在我之前的实现中,我曾经从 DAO 创建和关闭 EntityManager,现在使用 spring 替换它。任何人都可以帮助我理解,一旦事务结束,弹簧是否会关闭 EntityManager 连接,或者它会一直保持到应用程序被处理?

仅供参考,我不会关闭我自己的 EntityManager,假设一旦事务结束,spring 会为我关闭它。我担心如果不是它会在某个时间点导致资源泄漏。

问候拉吉布

4

1 回答 1

3

您可能会发现此链接很有用。另外,据我了解,在使用@PersistenceContext注释时,默认情况下,实体管理器仅在使用注释的方法期间附加,@Transactional并在方法结束时自动关闭。

于 2013-07-06T16:58:31.347 回答