80.3 初始化数据库
Spring Boot可以自动创建数据源
的模式(DDL脚本)并初始化它(DML脚本)。它从标准的根类路径位置加载SQL(schema.sql
与data.sql
)。此外,Spring Boot处理schema-${platform}.sql
和data-${platform}.sql
文件(如果存在),其中platform
是spring.datasource.platform
的值。这允许你在必要时切换到特定于数据库的脚本。例如,你可以选择将其设置为数据库的供应商名称(hsqldb
、h2
、oracle
、mysql
、postgresql
等)。
Spring Boot自动创建嵌入式数据源
的模式。可以通过使用spring.datasource.initialization-mode
属性定制此行为(也可以是always
或never
)。
默认情况下,Spring Boot支持Spring JDBC初始化器的故障快速特性。这意味着,如果脚本导致异常,应用程序将无法启动。你可以通过设置spring.datasource.continue-on-error
来调整该行为。
注 在基于JPA的应用程序中,你可以选择让Hibernate创建模式或使用schema.sql
。但你不能两者都做。如果使用schema.sql
,请确保禁用spring.jpa.hibernate.ddl-auto
。
最后更新于