我一直在搜索很多以确定 spring JPA 如何在打开 EntityManager 连接后关闭它。我已经使用 @PersistenceContext 将 Transactional EntityManager 注入(inject)到我的 DAO 中,这意味着 spring 将负责为我创建和关闭 EntityManager。然而,在我之前的实现中,我曾经从 DAO 创建和关闭 EntityManager,现在使用 spring 替换它。任何人都可以帮助我理解,一旦事务结束,Spring 是否会关闭 EntityManager 连接,还是会一直保持到应用程序被处置为止?
仅供引用,我不会关闭我自己的 EntityManager,假设事务结束后 spring 会为我关闭它。我担心如果不这样做,它会在某个时候导致资源泄漏。
问候 拉吉布
最佳答案
您可能会找到this link有用。另外,据我了解,使用 @PersistenceContext
注释时,默认情况下,实体管理器仅在用 @Transactional
注释的方法的持续时间内附加,并自动关闭在方法的末尾。
关于spring - 通过 Spring 关闭 EntityManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17504784/