【问题标题】:why `EntityManager` work,but EntityManagerFactory did not work for me?为什么 `EntityManager` 工作,但 EntityManagerFactory 不适合我?
【发布时间】:2016-05-09 13:43:26
【问题描述】:

我尝试使用Spring+JPA+Hibernate 并尝试注入EntityManagerFactory,然后在我的代码中创建EntityManger。但是当我使用entityManager.persist(user) 时,user 没有保存到database。但是当我尝试注入EntityManager 而不是EntityManagerFactory,它起作用了!,我不知道问题出在哪里。

您还可以查看此question 了解更多代码。

【问题讨论】:

    标签: spring hibernate jpa jakarta-ee


    【解决方案1】:

    当使用普通的EntityManagerFactory 而不是EntityManager 时,您需要调用createEntityManager。这将始终创建一个新的EntityManager,这基本上是一个普通的EntityManager,Spring 没有管理也没有检测到。因此,您还必须自己启动/提交事务。

    当使用EntityManager时,你将获得一个事务同步实例,它由Spring管理并绑定到当前事务。因此无需自己启动/提交事务。

    另请参阅参考指南的JPA section

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-25
      • 2014-01-03
      • 2011-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多