Преглед на файлове

动态数据源配置手册

hatim преди 6 години
родител
ревизия
25bd64b7ac
променени са 1 файла, в които са добавени 40 реда и са изтрити 0 реда
  1. 40 0
      规范/Java后端/动态数据源配置手册.md

+ 40 - 0
规范/Java后端/动态数据源配置手册.md

@@ -0,0 +1,40 @@
+# 动态数据源配置手册
+
+### 步骤
+
+1. 项目pom文件添加多数据源主键wisdom-ds
+
+   ```xml
+   <dependency>
+   	<groupId>com.wisdom</groupId>
+   	<artifactId>wisdom-ds</artifactId>
+   </dependency>
+   ```
+
+2. application.properties文件添加多数据源列表读取数据库地址
+
+   ```properties
+   custom.datasource.driverClassName=com.alibaba.druid.pool.DruidDataSource
+   custom.datasource.url=jdbc:mysql://${MYSQL_HOST:139.159.229.250}:${MYSQL_PORT:3306}/wisdom_platform?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&useSSL=false
+   custom.datasource.username=root
+   custom.datasource.password=ENC(dNVe4EKTSvOgtuhPntjVQe74EFrCQLQv)
+   ```
+
+3. application.properties文件添加org.springframework.boot.autoconfigure.EnableAutoConfiguration配置
+
+   ```properties
+   org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.wisdom.ds.config.DynamicDataSourceAutoConfiguration
+   ```
+
+4. 项目Application入口添加以下配置
+
+   ```java
+   @ComponentScan({"com.wisdom.ds"})
+   @SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class})
+   ```
+
+5. 项目的Controller类由继承```BaseController```更换为```DsBaseController```
+
+6. 定时任务需要把任务抽象出来,并继承```DsSchedule```,实现```job()```方法,里面就是任务执行内容。然后执行```dsScheduleStart()```方法执行任务。
+
+   ### Done!