Spring底层原理(三)

阅读 46

2023-10-27

starter引入

要想看jpa是如何将hibernate引入容器,首先要看的是 spring-boot-starter-data-jpa 如何引入依赖:
image.png
如果注意的话,starter的包内容其实没有什么实质的内容,关键是pom里的依赖
image.png
pom中规定了各依赖和依赖的版本,能有效地解决兼容性问题。

入口

代码跟踪看,初始化是通过springboot初始化的refresh方法引入
image.png
LocalContainerEntityManagerFactoryBean AbstractEntityManagerFactoryBean buildNativeEntityManagerFactory
image.pngimage.png
也就是在这里,从springjpa过渡到hibernate进行entityManagerFactory的创建。org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl#build
完成sessionFactory的创建。

精彩评论(0)

0 0 举报