Browse Source

多数据源配置

skyline 2 years ago
parent
commit
b6f74839fc
29 changed files with 164 additions and 150 deletions
  1. 18 0
      admin/pom.xml
  2. 16 5
      admin/src/main/resources/application.yml
  3. 0 8
      admin/src/main/resources/templates/application.properties
  4. 43 3
      common/pom.xml
  5. 8 0
      entity/pom.xml
  6. 39 0
      mapper/pom.xml
  7. 0 0
      mapper/src/main/resources/mappers/admin/AdminUserMapper.xml
  8. 0 0
      mapper/src/main/resources/mappers/admin/AdminUserRoleMapper.xml
  9. 0 0
      mapper/src/main/resources/mappers/admin/CompanyMapper.xml
  10. 0 0
      mapper/src/main/resources/mappers/admin/ConnectorInfoMapper.xml
  11. 0 0
      mapper/src/main/resources/mappers/admin/EquipmentInfoMapper.xml
  12. 0 0
      mapper/src/main/resources/mappers/admin/PermissionMapper.xml
  13. 0 0
      mapper/src/main/resources/mappers/admin/RoleMapper.xml
  14. 0 0
      mapper/src/main/resources/mappers/admin/RolePermissionMapper.xml
  15. 0 0
      mapper/src/main/resources/mappers/admin/StationMapper.xml
  16. 0 0
      mapper/src/main/resources/mappers/admin/SystemLogMapper.xml
  17. 0 0
      mapper/src/main/resources/mappers/miniapp/AccountMapper.xml
  18. 0 0
      mapper/src/main/resources/mappers/miniapp/CarsMapper.xml
  19. 0 0
      mapper/src/main/resources/mappers/miniapp/ChargeOrderMapper.xml
  20. 0 0
      mapper/src/main/resources/mappers/miniapp/CollectMapper.xml
  21. 0 0
      mapper/src/main/resources/mappers/miniapp/CollectionMapper.xml
  22. 0 0
      mapper/src/main/resources/mappers/miniapp/UserMapper.xml
  23. 0 0
      mapper/src/main/resources/mappers/miniapp/WalletDetailMapper.xml
  24. 18 0
      miniapp/pom.xml
  25. 2 1
      miniapp/src/main/java/com/kym/miniapp/MiniAppApplication.java
  26. 0 18
      miniapp/src/main/java/com/kym/miniapp/controller/CollectController.java
  27. 19 13
      miniapp/src/main/resources/application.yml
  28. 0 101
      pom.xml
  29. 1 1
      service/src/main/java/com/kym/service/admin/impl/StationServiceImpl.java

+ 18 - 0
admin/pom.xml

@@ -20,6 +20,24 @@
             <version>0.0.1-SNAPSHOT</version>
         </dependency>
 
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-validation</artifactId>
+            <version>3.1.1</version>
+        </dependency>
+
+
     </dependencies>
 
     <properties>

+ 16 - 5
admin/src/main/resources/application.yml

@@ -2,11 +2,22 @@ spring:
   application:
     name: miniapp
   datasource:
-    url: jdbc:mysql://localhost:3306/charge_admin
-    username: root
-    password: root
-    driver-class-name: com.mysql.cj.jdbc.Driver
-    name: charge-datasource
+    dynamic:
+      primary: db-admin
+      strict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源
+      datasource:
+        db-admin:
+          url: jdbc:mysql://121.40.98.15:3307/charge_admin
+          username: root
+          password: 123456
+          driver-class-name: com.mysql.cj.jdbc.Driver
+        db-miniapp:
+          url: jdbc:mysql://121.40.98.15:3307/charge_app
+          username: root
+          password: 123456
+          driver-class-name: com.mysql.cj.jdbc.Driver
+
+
   main:
     allow-circular-references: true
 

+ 0 - 8
admin/src/main/resources/templates/application.properties

@@ -1,8 +0,0 @@
-spring.datasource.name=testdatasource
-spring.datasource.url=jdbc:mysql://localhost:3306/skyline 
-spring.datasource.username=root
-spring.datasource.password=root
-spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
-
-mybatis.mapper-locations=classpath:mappers/*.xml
-mybatis.type-aliases-package=com.kym.charge.entity

+ 43 - 3
common/pom.xml

@@ -25,10 +25,50 @@
         </dependency>
 
         <dependency>
-            <groupId>com.baomidou</groupId>
-            <artifactId>mybatis-plus-boot-starter</artifactId>
-            <version>3.5.3.1</version>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-configuration-processor</artifactId>
+            <optional>true</optional>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-aop</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>com.alibaba.fastjson2</groupId>
+            <artifactId>fastjson2</artifactId>
+            <version>2.0.35</version>
+        </dependency>
+
+        <dependency>
+            <groupId>jakarta.servlet</groupId>
+            <artifactId>jakarta.servlet-api</artifactId>
+            <version>6.0.0</version>
+            <scope>provided</scope>
         </dependency>
+        <dependency>
+            <groupId>com.google.code.gson</groupId>
+            <artifactId>gson</artifactId>
+            <version>2.10.1</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.auth0</groupId>
+            <artifactId>java-jwt</artifactId>
+            <version>4.4.0</version>
+        </dependency>
+        <dependency>
+            <groupId>io.jsonwebtoken</groupId>
+            <artifactId>jjwt-api</artifactId>
+            <version>0.11.5</version>
+        </dependency>
+        <dependency>
+            <groupId>cn.dev33</groupId>
+            <artifactId>sa-token-spring-boot3-starter</artifactId>
+            <version>1.35.0.RC</version>
+        </dependency>
+
 
         <dependency>
             <groupId>com.squareup.okhttp3</groupId>

+ 8 - 0
entity/pom.xml

@@ -17,4 +17,12 @@
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     </properties>
 
+    <dependencies>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <optional>true</optional>
+        </dependency>
+    </dependencies>
+
 </project>

+ 39 - 0
mapper/pom.xml

@@ -23,6 +23,45 @@
             <artifactId>entity</artifactId>
             <version>0.0.1-SNAPSHOT</version>
         </dependency>
+
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-generator</artifactId>
+            <version>3.5.3.1</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+            <version>3.5.3.1</version>
+        </dependency>
+
+        <!-- 多数据源配置 -->
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
+            <version>4.1.2</version>
+        </dependency>
+
+
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>druid-spring-boot-starter</artifactId>
+            <version>1.2.18</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.mysql</groupId>
+            <artifactId>mysql-connector-j</artifactId>
+            <scope>runtime</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>com.github.pagehelper</groupId>
+            <artifactId>pagehelper-spring-boot-starter</artifactId>
+            <version>1.4.7</version>
+        </dependency>
+
     </dependencies>
 
 </project>

+ 0 - 0
admin/src/main/resources/mappers/AdminUserMapper.xml → mapper/src/main/resources/mappers/admin/AdminUserMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/AdminUserRoleMapper.xml → mapper/src/main/resources/mappers/admin/AdminUserRoleMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/CompanyMapper.xml → mapper/src/main/resources/mappers/admin/CompanyMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/ConnectorInfoMapper.xml → mapper/src/main/resources/mappers/admin/ConnectorInfoMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/EquipmentInfoMapper.xml → mapper/src/main/resources/mappers/admin/EquipmentInfoMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/PermissionMapper.xml → mapper/src/main/resources/mappers/admin/PermissionMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/RoleMapper.xml → mapper/src/main/resources/mappers/admin/RoleMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/RolePermissionMapper.xml → mapper/src/main/resources/mappers/admin/RolePermissionMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/StationMapper.xml → mapper/src/main/resources/mappers/admin/StationMapper.xml


+ 0 - 0
admin/src/main/resources/mappers/SystemLogMapper.xml → mapper/src/main/resources/mappers/admin/SystemLogMapper.xml


+ 0 - 0
miniapp/src/main/resources/mappers/AccountMapper.xml → mapper/src/main/resources/mappers/miniapp/AccountMapper.xml


+ 0 - 0
miniapp/src/main/resources/mappers/CarsMapper.xml → mapper/src/main/resources/mappers/miniapp/CarsMapper.xml


+ 0 - 0
miniapp/src/main/resources/mappers/ChargeOrderMapper.xml → mapper/src/main/resources/mappers/miniapp/ChargeOrderMapper.xml


+ 0 - 0
miniapp/src/main/resources/mappers/CollectMapper.xml → mapper/src/main/resources/mappers/miniapp/CollectMapper.xml


+ 0 - 0
miniapp/src/main/resources/mappers/CollectionMapper.xml → mapper/src/main/resources/mappers/miniapp/CollectionMapper.xml


+ 0 - 0
miniapp/src/main/resources/mappers/UserMapper.xml → mapper/src/main/resources/mappers/miniapp/UserMapper.xml


+ 0 - 0
miniapp/src/main/resources/mappers/WalletDetailMapper.xml → mapper/src/main/resources/mappers/miniapp/WalletDetailMapper.xml


+ 18 - 0
miniapp/pom.xml

@@ -37,6 +37,24 @@
             <scope>compile</scope>
         </dependency>
 
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-validation</artifactId>
+            <version>3.1.1</version>
+        </dependency>
+
+
         <dependency>
             <groupId>com.github.binarywang</groupId>
             <artifactId>weixin-java-miniapp</artifactId>

+ 2 - 1
miniapp/src/main/java/com/kym/miniapp/MiniAppApplication.java

@@ -3,6 +3,7 @@ package com.kym.miniapp;
 import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
 import org.springframework.cache.annotation.EnableCaching;
 
 /**
@@ -10,7 +11,7 @@ import org.springframework.cache.annotation.EnableCaching;
  *
  * @author skyline
  */
-@SpringBootApplication(scanBasePackages = {"com.kym"})
+@SpringBootApplication(scanBasePackages = {"com.kym"}, exclude = DataSourceAutoConfiguration.class)
 @MapperScan(basePackages = {"com.kym.mapper"})
 @EnableCaching
 public class MiniAppApplication {

+ 0 - 18
miniapp/src/main/java/com/kym/miniapp/controller/CollectController.java

@@ -1,18 +0,0 @@
-package com.kym.miniapp.controller;
-
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * <p>
- * 收藏表 前端控制器
- * </p>
- *
- * @author skyline
- * @since 2023-07-31
- */
-@RestController
-@RequestMapping("/collect")
-public class CollectController {
-
-}

+ 19 - 13
miniapp/src/main/resources/application.yml

@@ -2,11 +2,25 @@ spring:
   application:
     name: miniapp
   datasource:
-    url: jdbc:mysql://121.40.98.15:3307/charge_app
-    username: root
-    password: 123456
-    driver-class-name: com.mysql.cj.jdbc.Driver
-    name: miniapp-datasource
+    dynamic:
+      primary: db-miniapp
+      strict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源
+      datasource:
+        db-admin:
+          url: jdbc:mysql://121.40.98.15:3307/charge_admin
+          username: root
+          password: 123456
+          driver-class-name: com.mysql.cj.jdbc.Driver
+        db-miniapp:
+          url: jdbc:mysql://121.40.98.15:3307/charge_app
+          username: root
+          password: 123456
+          driver-class-name: com.mysql.cj.jdbc.Driver
+
+mybatis-plus:
+  mapper-locations: classpath*:/mappers/**/*.xml
+#  type-aliases-package: com.kym.entity.admin
+
   main:
     allow-circular-references: true
   data:
@@ -22,11 +36,6 @@ spring:
       time-to-live: 604800
 
 
-#mybatis:
-#  mapper-locations: classpath:mappers/*.xml
-#  type-aliases-package: com.kym.charge.entity
-#  configuration:
-#    map-underscore-to-camel-case: true #下划线转驼峰
 server:
   port: 8088
 # PageHelper
@@ -34,9 +43,6 @@ pagehelper:
   propertyName: propertyValue
   reasonable: false
   defaultCount: true # 分页插件默认参数支持 default-count 形式,自定义扩展的参数,必须大小写一致
-mybatis-plus:
-  mapper-locations: classpath:mappers/miniapp/*.xml
-  type-aliases-package: com.kym.entity.miniapp
 
 sa-token:
   # jwt秘钥

+ 0 - 101
pom.xml

@@ -26,107 +26,6 @@
         <java.version>17</java.version>
     </properties>
     <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-aop</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.mysql</groupId>
-            <artifactId>mysql-connector-j</artifactId>
-            <scope>runtime</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.projectlombok</groupId>
-            <artifactId>lombok</artifactId>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-validation</artifactId>
-            <version>3.1.1</version>
-        </dependency>
-
-
-        <dependency>
-            <groupId>com.alibaba</groupId>
-            <artifactId>druid-spring-boot-starter</artifactId>
-            <version>1.2.18</version>
-        </dependency>
-
-
-        <dependency>
-            <groupId>com.baomidou</groupId>
-            <artifactId>mybatis-plus-boot-starter</artifactId>
-            <version>3.5.3.1</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.baomidou</groupId>
-            <artifactId>mybatis-plus-generator</artifactId>
-            <version>3.5.3.1</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.github.pagehelper</groupId>
-            <artifactId>pagehelper-spring-boot-starter</artifactId>
-            <version>1.4.7</version>
-        </dependency>
-
-        <dependency>
-            <groupId>jakarta.servlet</groupId>
-            <artifactId>jakarta.servlet-api</artifactId>
-            <version>6.0.0</version>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>com.google.code.gson</groupId>
-            <artifactId>gson</artifactId>
-            <version>2.10.1</version>
-        </dependency>
-        <dependency>
-            <groupId>org.freemarker</groupId>
-            <artifactId>freemarker</artifactId>
-            <version>2.3.32</version>
-        </dependency>
-
-        <dependency>
-            <groupId>com.auth0</groupId>
-            <artifactId>java-jwt</artifactId>
-            <version>4.4.0</version>
-        </dependency>
-        <dependency>
-            <groupId>io.jsonwebtoken</groupId>
-            <artifactId>jjwt-api</artifactId>
-            <version>0.11.5</version>
-        </dependency>
-        <dependency>
-            <groupId>cn.dev33</groupId>
-            <artifactId>sa-token-spring-boot3-starter</artifactId>
-            <version>1.35.0.RC</version>
-        </dependency>
-        <dependency>
-            <groupId>com.alibaba.fastjson2</groupId>
-            <artifactId>fastjson2</artifactId>
-            <version>2.0.35</version>
-        </dependency>
-
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-configuration-processor</artifactId>
-            <optional>true</optional>
-        </dependency>
-
 
 
     </dependencies>

+ 1 - 1
service/src/main/java/com/kym/service/admin/impl/StationServiceImpl.java

@@ -62,7 +62,7 @@ public class StationServiceImpl extends ServiceImpl<StationMapper, Station> impl
                     "StartTime":%s,
                     "EndTime":%s
                 }
-                """.formatted(stationId,startTime,endTime);
+                """.formatted(stationId, startTime, endTime);
         var response = enPlusService.enPlusPost(EnPlusApi.EN_PLUS_QUERY_STATION_STATS.getApi(), enPlusService.buildParams(param));
         return JSONObject.parseObject(AESUtil.decrypt(response.getData()));
     }