【JPA】LocalContainerEntityManagerFactoryBean与EntityManger的关系

1
2
3
@Autowired
@Qualifier("primaryEntityManagerFactory")
private EntityManager primaryEntityManager;

  

1
2
3
4
5
6
7
8
9
@Primary
@Bean(name = "primaryEntityManagerFactory")
public LocalContainerEntityManagerFactoryBean primaryEntityManagerFactory(EntityManagerFactoryBuilder builder, @Qualifier("primaryDataSource") DataSource dataSource) throws NamingException {
    return builder
            .dataSource(dataSource)
            .properties(getVendorProperties(this.primaryDataSource(this.primaryDataSourceProperties())))
            .packages("abc")
            .build();
}

 

@Qualifier注解的作用是指定name进行注入

此时会找到LocalContainerEntityManagerFactoryBean进行注入,但LocalContainerEntityManagerFactoryBean不是EntityManager,为什么没有报错而且代码正常运行了呢?

 

请教了下G老师,G老师的回答是:

 

总结就是LocalContainerEntityManagerFactoryBean被用来创建一个EntityManagerFactory实例,EntityManagerFactory又被用来创建EntityManager实例。
posted @   onejay  阅读(293)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示