From 3812e4a4021b9970bbb0f9a1300a65278f1fc1c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BE=B7=E5=8D=8E?= Date: Wed, 8 Mar 2023 10:45:00 +0800 Subject: [PATCH] * add dbu --- pom.xml | 7 +++ ruoyi-dbu/pom.xml | 42 +++++++++++++++++ .../java/com/ruoyi/dbu/DbuApplication.java | 22 +++++++++ .../com/ruoyi/dbu/config/LiquibaseConfig.java | 45 +++++++++++++++++++ .../src/resources/application.properties | 33 ++++++++++++++ .../src/resources/default/changelog/3.2.4.xml | 13 ++++++ ruoyi-dbu/src/resources/default/master.xml | 9 ++++ 7 files changed, 171 insertions(+) create mode 100644 ruoyi-dbu/pom.xml create mode 100644 ruoyi-dbu/src/main/java/com/ruoyi/dbu/DbuApplication.java create mode 100644 ruoyi-dbu/src/main/java/com/ruoyi/dbu/config/LiquibaseConfig.java create mode 100644 ruoyi-dbu/src/resources/application.properties create mode 100644 ruoyi-dbu/src/resources/default/changelog/3.2.4.xml create mode 100644 ruoyi-dbu/src/resources/default/master.xml diff --git a/pom.xml b/pom.xml index ccc8f138c..61a4b4ce3 100644 --- a/pom.xml +++ b/pom.xml @@ -327,6 +327,13 @@ ruoyi-demo ${ruoyi-vue-plus.version} + + + + com.ruoyi + ruoyi-dbu + ${ruoyi-vue-plus.version} + diff --git a/ruoyi-dbu/pom.xml b/ruoyi-dbu/pom.xml new file mode 100644 index 000000000..4aac096af --- /dev/null +++ b/ruoyi-dbu/pom.xml @@ -0,0 +1,42 @@ + + + + ruoyi-vue-plus + com.ruoyi + 4.5.0 + + 4.0.0 + + ruoyi-dbu + + + dbu模块 + + + + + org.liquibase + liquibase-core + 4.19.1 + + + com.mysql + mysql-connector-j + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-aop + + + org.springframework.boot + spring-boot-starter-jdbc + + + + diff --git a/ruoyi-dbu/src/main/java/com/ruoyi/dbu/DbuApplication.java b/ruoyi-dbu/src/main/java/com/ruoyi/dbu/DbuApplication.java new file mode 100644 index 000000000..2b0ebee44 --- /dev/null +++ b/ruoyi-dbu/src/main/java/com/ruoyi/dbu/DbuApplication.java @@ -0,0 +1,22 @@ +package com.ruoyi.dbu; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.context.metrics.buffering.BufferingApplicationStartup; + +/** + * 启动程序 + * + * @author ruoyi + */ + +@SpringBootApplication +public class DbuApplication { + + public static void main(String[] args) { + SpringApplication application = new SpringApplication(DbuApplication.class); + application.setApplicationStartup(new BufferingApplicationStartup(2048)); + application.run(args); + } + +} diff --git a/ruoyi-dbu/src/main/java/com/ruoyi/dbu/config/LiquibaseConfig.java b/ruoyi-dbu/src/main/java/com/ruoyi/dbu/config/LiquibaseConfig.java new file mode 100644 index 000000000..395422a1b --- /dev/null +++ b/ruoyi-dbu/src/main/java/com/ruoyi/dbu/config/LiquibaseConfig.java @@ -0,0 +1,45 @@ +package com.ruoyi.dbu.config; + +import liquibase.integration.spring.SpringLiquibase; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import javax.sql.DataSource; + +@Configuration +public class LiquibaseConfig +{ + @Value("${update.module:}") + private String module; + + @Value("${liquibase.schema:}") + private String liquibaseSchema; + + @Bean + public SpringLiquibase liquibase(DataSource dataSource) + throws Exception + { + if (StringUtils.isEmpty(module) || module.equals("''")) + { + throw new Exception("请配置--update.module=oms/wms/admin(只可配置一个),选择需要更新的数据库"); + } + + SpringLiquibase liquibase = new SpringLiquibase(); + liquibase.setDataSource(dataSource); + liquibase.setChangeLog("classpath:" + module + "/master.xml"); + liquibase.setContexts("development,test,production"); + liquibase.setShouldRun(true); + liquibase.setDatabaseChangeLogTable("ds_changelog"); + liquibase.setDatabaseChangeLogLockTable("ds_changelog_lock"); +// liquibase.setDefaultSchema(null); + if (!StringUtils.isEmpty(liquibaseSchema)) + { + liquibase.setLiquibaseSchema(liquibaseSchema); + } + + return liquibase; + } + +} diff --git a/ruoyi-dbu/src/resources/application.properties b/ruoyi-dbu/src/resources/application.properties new file mode 100644 index 000000000..6d5d617e7 --- /dev/null +++ b/ruoyi-dbu/src/resources/application.properties @@ -0,0 +1,33 @@ +server.port = 9199 + +update.module=${UPDATE_MODULE:default} + +liquibase.schema=${UPDATE_SCHEMA:ry-vue} + +spring.datasource.name=${DATASOURCE_NAME:ry-vue} + +spring.datasource.url=${DATASOURCE_URL:jdbc:mysql://${MYSQL_HOST:localhost}:${MYSQL_PORT:3306}/${MYSQL_DATASOURCE:ry-vue}?useUnicode=true&characterEncoding=UTF8} + +spring.datasource.username=${MYSQL_USER:root} + +spring.datasource.password=${MYSQL_PASSWORD:root} + +spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver + +spring.datasource.type=com.zaxxer.hikari.HikariDataSource + +spring.datasource.hikari.minimum-idle=2 + +spring.datasource.hikari.maximum-pool-size=20 + +spring.datasource.hikari.auto-commit=true + +spring.datasource.hikari.idle-timeout=30000 + +spring.datasource.hikari.pool-name=DatebookHikariCP + +spring.datasource.hikari.max-lifetime=1800000 + +spring.datasource.hikari.connection-timeout=30000 + +spring.datasource.hikari.connection-test-query=SELECT 1 diff --git a/ruoyi-dbu/src/resources/default/changelog/3.2.4.xml b/ruoyi-dbu/src/resources/default/changelog/3.2.4.xml new file mode 100644 index 000000000..2e948904b --- /dev/null +++ b/ruoyi-dbu/src/resources/default/changelog/3.2.4.xml @@ -0,0 +1,13 @@ + + + + + + + + + + diff --git a/ruoyi-dbu/src/resources/default/master.xml b/ruoyi-dbu/src/resources/default/master.xml new file mode 100644 index 000000000..91f0069ae --- /dev/null +++ b/ruoyi-dbu/src/resources/default/master.xml @@ -0,0 +1,9 @@ + + + + + +