我正在创建自己的ORM,现在我需要将从实体类生成的SQL代码推送到数据库中。我的目的不是复制Spring的工作方式,而是查看它在生命周期的哪个阶段以及运行的确切程度。
谢谢
读取schema.sql
并执行它的实际类是DataSourceInitializer#createSchema()
。
这里是某种程度上触发它的高级流程:
DataSourceInitializer#createSchema()
类,则spring-boot自动配置将启用DataSource
DataSourceAutoConfiguration
导入DataSourceAutoConfiguration
DataSourceInitializationConfiguration
寄存器DataSourceInitializationConfiguration
,将被执行并强制初始化DataSourceInitializerPostProcessor
。DataSourceInitializerInvoker
的DataSourceInitializerInvoker
然后将执行afterPropertiesSet
以读取并执行DataSourceInitializer#createSchema()