【SpringBoot】如何在SpringBoot工程启动时建表和填充数据
本例适用版本:
SpringBoot:2.5.4
Oracle:11.2.0.1.0
不保证本例在其它版本依然适用
先决条件:
SpringBoot工程能与目标DB顺畅连接。
下面正文开始:
1.在application.properties中加入以下文字:
spring.sql.init.mode=always spring.sql.init.schema-locations=classpath:schema.sql spring.sql.init.data-locations=classpath:data.sql
mode有always、embedded、never三个选项,一般再需要建表时填always,如果表已经建立完毕须改成never;
schema-locations是建表语句文件所在,本例中的schema.sql是这样书写的:
create table test( id int, name nvarchar2(20), primary key(id));
data-locations是给表充值文件所在,本例中data.sql是这样书写的:
insert into test(id,name) values(1,'Andy'); insert into test(id,name) values(2,'Bill');
以上文件的物理位置见下图:
2.以上三处就绪后运行程序,如果报错就检查sql语句有没有纰漏,如果不报错就表示建表成功了,我们可以到sqlplus里看看:
SQL> select count(*) from user_tables where table_name=upper('test'); COUNT(*) ---------- 1 SQL> select * from test; ID NAME ---------- ---------------------------------------- 1 Andy 2 Bill
确如期望,目的达成。
前作:https://www.cnblogs.com/heyang78/p/12791747.html
END