spring - 通过 Spring 关闭 EntityManager

标签 spring spring-jdbc

我一直在搜索很多以确定 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/

相关文章:

spring - 不满意的依赖异常 : Error creating bean with name 'homeController' : Unsatisfied dependency expressed through field 'userDAO'

java - Spring Boot MongoRepository 空指针异常

java - 数据库恢复后Spring身份验证失败

java - Spring MVC - 将模型发送到 View 并返回到 Controller

java - 处理动态数据库连接

java - JDBCTemplate 挂起

java - 我是否应该在服务类上使用@Transactional

java - 构建项目 spring org.springframework.beans.factory.UnsatisfiedDependencyException 时出错

oracle - 内部错误 : Image is a collection image, 期望使用 Oracle 进行 ADT

Java Jdbctemplate 查询具有命名参数和行映射器的列表?