您可以创建一个data.sql文件在你的src/主/资源文件夹,启动时会自动执行。在此文件中您可以添加一些插入语句,例如:
INSERT INTO users (username, firstname, lastname) VALUES
('lala', 'lala', 'lala'),
('lolo', 'lolo', 'lolo');
同样,您可以创建一个模式.sql文件(或 schema-h2.sql)来创建您的模式:
CREATE TABLE task (
id INTEGER PRIMARY KEY,
description VARCHAR(64) NOT NULL,
completed BIT NOT NULL);
尽管通常您不必这样做,因为 Spring boot 已经配置 Hibernate 以根据内存数据库的实体创建模式。如果您确实想使用 schema.sql,则必须通过将其添加到 application.properties 来禁用此功能:
spring.jpa.hibernate.ddl-auto=none
更多信息可以在有关的文档中找到数据库初始化 http://docs.spring.io/spring-boot/docs/current/reference/html/howto-database-initialization.html.
如果您正在使用春季启动2,数据库初始化仅适用于嵌入式数据库(H2、HSQLDB,...)。如果您也想将其用于其他数据库,则需要更改初始化模式属性:
spring.sql.init.mode=always # Spring Boot >=v2.5.0
spring.datasource.initialization-mode=always # Spring Boot <v2.5.0
如果您使用多个数据库供应商,您可以命名您的文件数据-h2.sql or 数据-mysql.sql取决于您要使用哪个数据库平台。
为了使其工作,您必须配置数据源平台属性:
spring.sql.init.platform=h2 # Spring Boot >=v2.5.0
spring.datasource.platform=h2 # Spring Boot <v2.5.0