Spring Boot 2 + JPA / Hibernate 5 注入 SessionFactory 的正确姿势详解编程语言

pom 中整合 Spring Boot 和 JPA 处:

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>2.1.1.RELEASE</version> 
    <relativePath/> <!-- lookup parent from repository --> 
</parent> 
<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-data-jpa</artifactId> 
</dependency> 

确定 Hibernate 版本:
通过查看源码,发现 Hibernate 的版本为 5.3.7。
[email protected],会报错:

entityManagerFactory must not be null. 

此时注入SessionFactory的正确方法:

@Autowired 
private EntityManagerFactory entityManagerFactory; 
 
public Session getSession() {
    
    return entityManagerFactory.unwrap(SessionFactory.class).openSession(); 
} 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/19597.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论