diff --git a/pom.xml b/pom.xml index 895da0506ae0546b6b9430d4707fb6f119b19b68..976bbd1ad732610b4529dfc9a98a4b9071d7e198 100644 --- a/pom.xml +++ b/pom.xml @@ -8,10 +8,10 @@ 6.2.3.1 generator - 1.0.9 + 1.1.0-SNAPSHOT 1.3.0 - 1.0.9 + 1.1.0-SNAPSHOT diff --git a/sql/generator.sql b/sql/generator.sql index cfe3f2f83111e3b22908791678ffdd379452a0d5..d930a6f26ba181daf76ef58a47d8f8e9c48e6a18 100644 --- a/sql/generator.sql +++ b/sql/generator.sql @@ -13,6 +13,8 @@ CREATE TABLE `data_source` ( `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '账号', `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '密码', `drive_class` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '驱动', + `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '创建时间', + `modify_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Compact; diff --git a/src/main/java/org/sean/generator/entity/DataSourceEntity.java b/src/main/java/org/sean/generator/entity/DataSourceEntity.java index 19f120e7cd8c90714588a9ace62e7e8d77d8e724..942493476bcf06f3378072d5f77363634a4dd148 100644 --- a/src/main/java/org/sean/generator/entity/DataSourceEntity.java +++ b/src/main/java/org/sean/generator/entity/DataSourceEntity.java @@ -5,6 +5,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import org.sean.framework.entity.BaseEntity; +import java.util.Date; + /** * @@ -41,4 +43,13 @@ public class DataSourceEntity extends BaseEntity { */ private String driveClass; + /** + * 创建时间 + */ + private Date createTime; + + /** + * 修改时间 + */ + private Date modifyTime; } diff --git a/src/main/java/org/sean/generator/init/DataSourceInit.java b/src/main/java/org/sean/generator/init/DataSourceInit.java index 311261d70ccb32ce7cdf1a676df3e55a4717aa80..4007be3fff2a4c5cba8a66271c8984ca0defaee2 100644 --- a/src/main/java/org/sean/generator/init/DataSourceInit.java +++ b/src/main/java/org/sean/generator/init/DataSourceInit.java @@ -2,13 +2,16 @@ package org.sean.generator.init; import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zaxxer.hikari.HikariDataSource; +import org.sean.framework.util.ObjectUtil; import org.sean.generator.context.SpringContext; import org.sean.generator.entity.DataSourceEntity; import org.sean.generator.service.DataSourceService; import org.springframework.boot.context.event.ApplicationReadyEvent; import org.springframework.boot.jdbc.DataSourceBuilder; import org.springframework.context.ApplicationListener; +import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import javax.sql.DataSource; @@ -19,6 +22,7 @@ public class DataSourceInit implements ApplicationListener datasources = dataSourceService.list(); - datasources.forEach(ds -> { + resetDataSource(datasources); + } + } + + private void resetDataSource(List list) { + if (ObjectUtil.isNotEmpty(list)) { + list.forEach(ds -> { DataSource dataSource = DataSourceBuilder.create(getClass().getClassLoader()). type(HikariDataSource.class) .driverClassName(ds.getDriveClass()) @@ -41,8 +51,20 @@ public class DataSourceInit implements ApplicationListener lastTime) { + lastTime = ds.getModifyTime().getTime(); + } }); } } + /** + * 数据源定时更新 + */ + @Scheduled(initialDelay = 30_000L, fixedDelay = 60_000L) + public void updateDataSource() { + List list = dataSourceService.list(new LambdaQueryWrapper() + .gt(DataSourceEntity::getModifyTime, lastTime)); + resetDataSource(list); + } } diff --git a/src/main/resources/static/fonts/fontawesome-webfont.svg b/src/main/resources/static/fonts/fontawesome-webfont.svg index 0b5eded43f6857a22b4f7ea5b4253cd49166fca2..9ef5fc113464350e05da1773ce4f2bbbbe7d0e00 100644 --- a/src/main/resources/static/fonts/fontawesome-webfont.svg +++ b/src/main/resources/static/fonts/fontawesome-webfont.svg @@ -1294,9 +1294,6 @@ q-107 34 -147.5 126.5t6.5 187.5q47 93 151.5 139t210.5 19q111 -29 158.5 -119.5t2. q0 -68 -37 -139.5t-109 -137t-168.5 -117.5t-226 -83t-270.5 -31t-275 33.5t-240.5 93t-171.5 151t-65 199.5q0 115 69.5 245t197.5 258q169 169 341.5 236t246.5 -7q65 -64 20 -209q-4 -14 -1 -20t10 -7t14.5 0.5t13.5 3.5l6 2q139 59 246 59t153 -61q45 -63 0 -178 q-2 -13 -4.5 -20t4.5 -12.5t12 -7.5t17 -6q57 -18 103 -47t80 -81.5t34 -116.5zM1489 1046q42 -47 54.5 -108.5t-6.5 -117.5q-8 -23 -29.5 -34t-44.5 -4q-23 8 -34 29.5t-4 44.5q20 63 -24 111t-107 35q-24 -5 -45 8t-25 37q-5 24 8 44.5t37 25.5q60 13 119 -5.5t101 -65.5z M1670 1209q87 -96 112.5 -222.5t-13.5 -241.5q-9 -27 -34 -40t-52 -4t-40 34t-5 52q28 82 10 172t-80 158q-62 69 -148 95.5t-173 8.5q-28 -6 -52 9.5t-30 43.5t9.5 51.5t43.5 29.5q123 26 244 -11.5t208 -134.5z"/> - + +
+
+ +
+ 查询 +
-
-
- -
- 查询 -
diff --git a/src/main/resources/views/index.html b/src/main/resources/views/index.html index aab9324bd6d70d1bc74ddca149eea7bd81ac6454..994f89b64101d18fdbd66e1b7480d70043a5829a 100644 --- a/src/main/resources/views/index.html +++ b/src/main/resources/views/index.html @@ -85,12 +85,6 @@ -
- -
-