From 81ee1ec5911e5ac7a086c0d2d93da9215beeed10 Mon Sep 17 00:00:00 2001 From: lihongjie0209 Date: Sat, 9 Sep 2023 15:56:10 +0800 Subject: [PATCH] =?UTF-8?q?flyway=20=E5=9C=A8hibernate=E4=B9=8B=E5=90=8E?= =?UTF-8?q?=E8=BF=90=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .jpb/jpb-settings.xml | 2 +- .../lihongjie/coal/runner/InitDataRunner.java | 6 +++++ .../coal/spring/config/FlywayConfig.java | 23 +++++++++++++++++++ src/main/resources/db/migration/V2__test.sql | 1 + 4 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 src/main/java/cn/lihongjie/coal/spring/config/FlywayConfig.java create mode 100644 src/main/resources/db/migration/V2__test.sql diff --git a/.jpb/jpb-settings.xml b/.jpb/jpb-settings.xml index 5ffa4b85..fc6b2503 100644 --- a/.jpb/jpb-settings.xml +++ b/.jpb/jpb-settings.xml @@ -2,7 +2,7 @@ - + diff --git a/src/main/java/cn/lihongjie/coal/runner/InitDataRunner.java b/src/main/java/cn/lihongjie/coal/runner/InitDataRunner.java index 22321021..05982044 100644 --- a/src/main/java/cn/lihongjie/coal/runner/InitDataRunner.java +++ b/src/main/java/cn/lihongjie/coal/runner/InitDataRunner.java @@ -9,6 +9,7 @@ import cn.lihongjie.coal.session.SessionService; import cn.lihongjie.coal.user.entity.UserEntity; import cn.lihongjie.coal.user.service.UserService; import lombok.extern.slf4j.Slf4j; +import org.flywaydb.core.Flyway; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.CommandLineRunner; import org.springframework.security.core.context.SecurityContext; @@ -33,6 +34,9 @@ public class InitDataRunner implements CommandLineRunner { @Autowired ResourceService resourceService; + @Autowired + Flyway flyway; + @Autowired DictionaryService dictionaryService; @@ -40,6 +44,8 @@ public class InitDataRunner implements CommandLineRunner { @Transactional public void run(String... args) throws Exception { + flyway.migrate(); + OrganizationEntity e = organizationService.initOrGetAdminOrg(); diff --git a/src/main/java/cn/lihongjie/coal/spring/config/FlywayConfig.java b/src/main/java/cn/lihongjie/coal/spring/config/FlywayConfig.java new file mode 100644 index 00000000..02cc1cf7 --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/spring/config/FlywayConfig.java @@ -0,0 +1,23 @@ +package cn.lihongjie.coal.spring.config; + +import org.flywaydb.core.Flyway; +import org.springframework.boot.autoconfigure.flyway.FlywayMigrationInitializer; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class FlywayConfig { + + + /** + * Override default flyway initializer to do nothing + */ + @Bean + FlywayMigrationInitializer flywayInitializer(Flyway flyway) { + return new FlywayMigrationInitializer(flyway, (f) ->{} ); + } + + + + +} diff --git a/src/main/resources/db/migration/V2__test.sql b/src/main/resources/db/migration/V2__test.sql new file mode 100644 index 00000000..9e13a3ef --- /dev/null +++ b/src/main/resources/db/migration/V2__test.sql @@ -0,0 +1 @@ +select 1; \ No newline at end of file