From 423cc032c053d6d153f579a803500a471d89910e Mon Sep 17 00:00:00 2001
From: liusuyi <13324259@qq.com>
Date: 星期日, 17 九月 2023 23:41:55 +0800
Subject: [PATCH] 增加多数据源
---
src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java | 2
src/main/java/com/ard/config/DruidConfig.java | 14 +-
src/main/java/com/ard/alarm/apponekey/controller/ArdAlarmApponekeyController.java | 1
src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java | 2
src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java | 2
src/main/resources/GeneratorMapper.xml | 57 +++++++++++
src/main/resources/application-dev.yml | 113 +++++++++++++++++-----
src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java | 2
pom.xml | 24 ++++
src/main/resources/application.yml | 2
src/main/java/com/ard/alarm/digitization/controller/DatabridgeController.java | 30 ++++++
11 files changed, 215 insertions(+), 34 deletions(-)
diff --git a/pom.xml b/pom.xml
index 419f554..42e4c7d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -65,6 +65,13 @@
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.2</version>
</dependency>
+ <!--Oracle jdbc-->
+ <!--杩欓噷娉ㄦ剰锛屾煇浜沷jdbc鐨勭増鏈笉鏀寔jdk1.8锛岄亣鍒拌繃锛岀綉涓婅杩欎釜ojdbc8鏀寔锛屾墍浠ヨ繖閲屼娇鐢ㄥ畠-->
+ <dependency>
+ <groupId>com.oracle.ojdbc</groupId>
+ <artifactId>ojdbc8</artifactId>
+ <version>19.3.0.0</version>
+ </dependency>
<!--minio渚濊禆-->
<dependency>
<groupId>io.minio</groupId>
@@ -86,6 +93,12 @@
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.14</version>
+ </dependency>
+ <!-- 鍔ㄦ�佹暟鎹簮 -->
+ <dependency>
+ <groupId>com.baomidou</groupId>
+ <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
+ <version>3.5.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
@@ -124,6 +137,17 @@
</buildArgs>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.mybatis.generator</groupId>
+ <artifactId>mybatis-generator-maven-plugin</artifactId>
+ <version>1.4.1</version>
+ <configuration>
+ <!--閰嶇疆鏂囦欢浣嶇疆-->
+ <configurationFile>src/main/resources/GeneratorMapper.xml</configurationFile>
+ <verbose>true</verbose>
+ <overwrite>true</overwrite>
+ </configuration>
+ </plugin>
</plugins>
</build>
diff --git a/src/main/java/com/ard/alarm/apponekey/controller/ArdAlarmApponekeyController.java b/src/main/java/com/ard/alarm/apponekey/controller/ArdAlarmApponekeyController.java
index d01aafb..9ea97ee 100644
--- a/src/main/java/com/ard/alarm/apponekey/controller/ArdAlarmApponekeyController.java
+++ b/src/main/java/com/ard/alarm/apponekey/controller/ArdAlarmApponekeyController.java
@@ -20,6 +20,7 @@
public class ArdAlarmApponekeyController {
@Resource
private IArdAlarmApponekeyService ardAlarmApponekeyService;
+
/**
* 鏂板app涓�閿姤璀�
*/
diff --git a/src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java b/src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java
index c75f1df..dfc62dc 100644
--- a/src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java
+++ b/src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java
@@ -2,6 +2,7 @@
import java.util.List;
import com.ard.alarm.camera.domain.ArdCameras;
+import com.baomidou.dynamic.datasource.annotation.DS;
import org.apache.ibatis.annotations.Mapper;
/**
@@ -11,6 +12,7 @@
* @date 2023-02-11
*/
@Mapper
+@DS("postgres")
public interface ArdCamerasMapper
{
/**
diff --git a/src/main/java/com/ard/alarm/digitization/controller/DatabridgeController.java b/src/main/java/com/ard/alarm/digitization/controller/DatabridgeController.java
new file mode 100644
index 0000000..24ab6da
--- /dev/null
+++ b/src/main/java/com/ard/alarm/digitization/controller/DatabridgeController.java
@@ -0,0 +1,30 @@
+package com.ard.alarm.digitization.controller;
+
+import com.ard.alarm.digitization.mapper.DatabridgeMapper;
+import com.ard.alarm.digitization.model.Databridge;
+import com.ard.utils.http.AjaxResult;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import javax.annotation.Resource;
+
+/**
+ * @ClassName DatabridgeController
+ * @Description:
+ * @Author 鍒樿嫃涔�
+ * @Date 2023/9/17 23:11
+ * @Version 1.0
+ */
+@RestController
+@RequestMapping("/alarm/digitization")
+public class DatabridgeController {
+
+ @Resource
+ DatabridgeMapper databridgeMapper;
+
+
+ @GetMapping("/list")
+ public AjaxResult list(Databridge databridge) {
+ return AjaxResult.success(databridgeMapper.selectDatabridgeList(databridge));
+ }
+}
diff --git a/src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java b/src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java
index e5b3a23..ddca367 100644
--- a/src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java
+++ b/src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java
@@ -2,6 +2,7 @@
import java.util.List;
import com.ard.alarm.external.domain.ArdEquipExternal;
+import com.baomidou.dynamic.datasource.annotation.DS;
import org.apache.ibatis.annotations.Mapper;
@@ -12,6 +13,7 @@
* @date 2023-03-13
*/
@Mapper
+@DS("postgres")
public interface ArdEquipExternalMapper
{
/**
diff --git a/src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java b/src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java
index 2d5755c..86f93d9 100644
--- a/src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java
+++ b/src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java
@@ -2,6 +2,7 @@
import java.util.List;
import com.ard.alarm.radar.domain.ArdEquipRadar;
+import com.baomidou.dynamic.datasource.annotation.DS;
import org.apache.ibatis.annotations.Mapper;
/**
@@ -11,6 +12,7 @@
* @date 2023-03-11
*/
@Mapper
+@DS("postgres")
public interface ArdEquipRadarMapper
{
/**
diff --git a/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java b/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
index 7208846..1cc832e 100644
--- a/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
+++ b/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
@@ -39,7 +39,7 @@
* @淇敼浜哄拰鍏跺畠淇℃伅
*/
@Async("alarm")
- @Scheduled(cron="0/5 * * * * ?")
+ // @Scheduled(cron="0/5 * * * * ?")
public void alarmHandler() {
try {
String allAlarmData = restTemplate.getForObject(stealElecUrl, String.class);
diff --git a/src/main/java/com/ard/config/DruidConfig.java b/src/main/java/com/ard/config/DruidConfig.java
index d1df6c6..70619ee 100644
--- a/src/main/java/com/ard/config/DruidConfig.java
+++ b/src/main/java/com/ard/config/DruidConfig.java
@@ -15,17 +15,17 @@
* @Date: 2023骞�07鏈�04鏃�15:29
* @Version: 1.0
**/
-@Configuration
+
public class DruidConfig {
//杩欎釜娉ㄨВ璇诲彇閰嶇疆鏂囦欢鍓嶇紑涓簆refix鐨勯厤缃紝灏嗗閮ㄧ殑閰嶇疆鏂囦欢涓庤繖閲岀粦瀹�
@ConfigurationProperties(prefix = "spring.datasource.druid")
//瀹瑰櫒鐨勫紑鍚笌鍏抽棴
- @Bean(initMethod = "init",destroyMethod = "close")
- public DruidDataSource dataSource(){
- DruidDataSource dataSource=new DruidDataSource();
- dataSource.setProxyFilters(Lists.newArrayList(statFilter()));
- return dataSource;
- }
+// @Bean(initMethod = "init",destroyMethod = "close")
+// public DruidDataSource dataSource(){
+// DruidDataSource dataSource=new DruidDataSource();
+// dataSource.setProxyFilters(Lists.newArrayList(statFilter()));
+// return dataSource;
+// }
//bean娉ㄨВ锛屾垚涓簊pring鐨刡ean锛屽埄鐢╢ilter灏嗘參sql鐨勬棩蹇楁墦鍗板嚭鏉�
@Bean
public Filter statFilter(){
diff --git a/src/main/resources/GeneratorMapper.xml b/src/main/resources/GeneratorMapper.xml
new file mode 100644
index 0000000..7ed6e9f
--- /dev/null
+++ b/src/main/resources/GeneratorMapper.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE generatorConfiguration
+ PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
+ "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
+<generatorConfiguration>
+ <!-- 鎸囧畾杩炴帴鏁版嵁搴撶殑 JDBC 椹卞姩鍖呮墍鍦ㄤ綅缃紝鎸囧畾鍒颁綘鏈満鐨勫畬鏁磋矾寰� -->
+ <classPathEntry location="D:\ENV\repository\com\oracle\ojdbc\ojdbc8\19.3.0.0\ojdbc8-19.3.0.0.jar"/>
+ <classPathEntry location="F:\desktop\orai18n-19.7.0.0.jar"/>
+ <!-- 閰嶇疆 table 琛ㄤ俊鎭唴瀹逛綋锛宼argetRuntime 鎸囧畾閲囩敤 MyBatis3 鐨勭増鏈� -->
+ <context id="tables" targetRuntime="MyBatis3">
+ <!-- 鎶戝埗鐢熸垚娉ㄩ噴锛岀敱浜庣敓鎴愮殑娉ㄩ噴閮芥槸鑻辨枃鐨勶紝鍙互涓嶈瀹冪敓鎴� -->
+ <commentGenerator>
+ <property name="suppressAllComments" value="true"/>
+ </commentGenerator>
+ <!-- 閰嶇疆鏁版嵁搴撹繛鎺ヤ俊鎭� -->
+ <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"
+ connectionURL="jdbc:oracle:thin:@//112.98.126.2:21521/orcl"
+ userId="c##ard_user"
+ password="123456">
+ </jdbcConnection>
+ <!-- 鐢熸垚 model 绫伙紝targetPackage 鎸囧畾 model 绫荤殑鍖呭悕锛� targetProject 鎸囧畾
+ 鐢熸垚鐨� model 鏀惧湪 eclipse 鐨勫摢涓伐绋嬩笅闈�-->
+ <javaModelGenerator targetPackage="com.ard.alarm.digitization.model"
+ targetProject="src/main/java">
+ <property name="enableSubPackages" value="false"/>
+ <property name="trimStrings" value="false"/>
+ </javaModelGenerator>
+ <!-- 鐢熸垚 MyBatis 鐨� Mapper.xml 鏂囦欢锛宼argetPackage 鎸囧畾 mapper.xml 鏂囦欢鐨�
+ 鍖呭悕锛� targetProject 鎸囧畾鐢熸垚鐨� mapper.xml 鏀惧湪 eclipse 鐨勫摢涓伐绋嬩笅闈� -->
+ <sqlMapGenerator targetPackage="mapper"
+ targetProject="src/main/resources">
+ <property name="enableSubPackages" value="false"/>
+ </sqlMapGenerator>
+ <!-- 鐢熸垚 MyBatis 鐨� Mapper 鎺ュ彛绫绘枃浠�,targetPackage 鎸囧畾 Mapper 鎺ュ彛绫荤殑鍖�
+ 鍚嶏紝 targetProject 鎸囧畾鐢熸垚鐨� Mapper 鎺ュ彛鏀惧湪 eclipse 鐨勫摢涓伐绋嬩笅闈� -->
+ <javaClientGenerator type="XMLMAPPER"
+ targetPackage="com.ard.alarm.digitization.mapper" targetProject="src/main/java">
+ <property name="enableSubPackages" value="false"/>
+ </javaClientGenerator>
+ <!-- 鏁版嵁搴撹〃鍚嶅強瀵瑰簲鐨� Java 妯″瀷绫诲悕 -->
+ <table tableName="DATABRIDGE" domainObjectName="Databridge"
+ enableCountByExample="false"
+ enableUpdateByExample="false"
+ enableDeleteByExample="false"
+ enableSelectByExample="false"
+ selectByExampleQueryId="false">
+ <!--浣跨敤瀹為檯鐨勫瓧娈靛悕-->
+ <property name="useActualColumnNames" value="true"/>
+ <columnOverride column="DB_GUID" property="id"/>
+ <columnOverride column="DB_XMMC" property="xmmc"/>
+ <columnOverride column="DB_FKEY" property="fKey"/>
+ <columnOverride column="DB_FNAME" property="fName"/>
+ <columnOverride column="DB_VALUE" property="value"/>
+ <columnOverride column="DB_DATETIME" property="dateTime"/>
+ </table>
+ </context>
+</generatorConfiguration>
\ No newline at end of file
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index bbc7292..7abba08 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -9,37 +9,100 @@
max-file-size: 30MB
max-request-size: 30MB
datasource:
- # 浣跨敤druid鏁版嵁搴撹繛鎺ユ睜
- druid:
- #寮�鍚痙ruid鐩戞帶web
- stat-view-servlet:
- enabled: true
- driver-class-name: org.postgresql.Driver
- url: jdbc:postgresql://192.168.1.15:5432/ry-vue?stringtype=unspecified
- username: postgres
- password: postgres
- #鏈�澶ц繛鎺ユ暟
- maxActive: 30
- #鏈�灏忚繛鎺ユ暟
- minIdle: 5
- #鑾峰彇杩炴帴鐨勬渶澶х瓑寰呮椂闂�
- maxWait: 10000
- #瑙e喅mysql8灏忔椂鐨勯棶棰�
- validation-query: SELECT 'X'
- #绌洪棽杩炴帴鐨勬鏌ユ椂闂撮棿闅�
- timeBetweenEvictionRunsMillis: 60000
- #绌洪棽杩炴帴鏈�灏忕┖闂叉椂闂�
- minEvictableIdleTimeMillis: 300000
+ dynamic:
+ primary: postgres #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�
+ strict: false #涓ユ牸鍖归厤鏁版嵁婧�,榛樿false. true鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鎶涘紓甯�,false浣跨敤榛樿鏁版嵁婧�
+ druid: # 鍏ㄥ眬druid鍙傛暟锛屽崟鐙暟鎹簮閰嶇疆涓虹┖鏃跺彇鍏ㄥ眬閰嶇疆
+ # 杩炴帴姹犵殑閰嶇疆淇℃伅
+ # 鍒濆鍖栧ぇ灏忥紝鏈�灏忥紝鏈�澶�
+ initial-size: 1
+ min-idle: 2
+ maxActive: 8
+ # 閰嶇疆鑾峰彇杩炴帴绛夊緟瓒呮椂鐨勬椂闂�
+ maxWait: 60000
+ # 閰嶇疆闂撮殧澶氫箙鎵嶈繘琛屼竴娆℃娴嬶紝妫�娴嬮渶瑕佸叧闂殑绌洪棽杩炴帴锛屽崟浣嶆槸姣
+ timeBetweenEvictionRunsMillis: 60000
+ # 閰嶇疆涓�涓繛鎺ュ湪姹犱腑鏈�灏忕敓瀛樼殑鏃堕棿锛屽崟浣嶆槸姣
+ minEvictableIdleTimeMillis: 300000
+ validationQuery: SELECT 1 FROM DUAL
+ testWhileIdle: true
+ testOnBorrow: false
+ testOnReturn: false
+ # 鎵撳紑PSCache锛屽苟涓旀寚瀹氭瘡涓繛鎺ヤ笂PSCache鐨勫ぇ灏�
+ poolPreparedStatements: true
+ maxPoolPreparedStatementPerConnectionSize: 20
+ # 閰嶇疆鐩戞帶缁熻鎷︽埅鐨刦ilters锛屽幓鎺夊悗鐩戞帶鐣岄潰sql鏃犳硶缁熻锛�'wall'鐢ㄤ簬闃茬伀澧�
+ filters: stat,wall,slf4j
+ # 閫氳繃connectProperties灞炴�ф潵鎵撳紑mergeSql鍔熻兘锛涙參SQL璁板綍
+ connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
+ datasource:
+ oracle:
+ url: jdbc:oracle:thin:@//112.98.126.2:21521/orcl
+ username: c##ard_user
+ password: 123456
+ driver-class-name: oracle.jdbc.driver.OracleDriver
+ druid: #閰嶇疆mysql 榛樿杩炴帴姹犲弬鏁�
+ # 杩炴帴姹犵殑閰嶇疆淇℃伅
+ # 鍒濆鍖栧ぇ灏忥紝鏈�灏忥紝鏈�澶�
+ initial-size: 3
+ min-idle: 3
+ maxActive: 8
+ # 閰嶇疆鑾峰彇杩炴帴绛夊緟瓒呮椂鐨勬椂闂�
+ maxWait: 600000
+ # 閰嶇疆闂撮殧澶氫箙鎵嶈繘琛屼竴娆℃娴嬶紝妫�娴嬮渶瑕佸叧闂殑绌洪棽杩炴帴锛屽崟浣嶆槸姣
+ timeBetweenEvictionRunsMillis: 60000
+ # 閰嶇疆涓�涓繛鎺ュ湪姹犱腑鏈�灏忕敓瀛樼殑鏃堕棿锛屽崟浣嶆槸姣
+ minEvictableIdleTimeMillis: 300000
+ validationQuery: SELECT 1 FROM DUAL
+ testWhileIdle: true
+ testOnBorrow: false
+ testOnReturn: false
+ # 鎵撳紑PSCache锛屽苟涓旀寚瀹氭瘡涓繛鎺ヤ笂PSCache鐨勫ぇ灏�
+ poolPreparedStatements: true
+ maxPoolPreparedStatementPerConnectionSize: 20
+ # 閰嶇疆鐩戞帶缁熻鎷︽埅鐨刦ilters锛屽幓鎺夊悗鐩戞帶鐣岄潰sql鏃犳硶缁熻锛�'wall'鐢ㄤ簬闃茬伀澧�
+ filters: stat,wall,slf4j
+ # 閫氳繃connectProperties灞炴�ф潵鎵撳紑mergeSql鍔熻兘锛涙參SQL璁板綍
+ connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
+ postgres:
+ url: jdbc:postgresql://192.168.1.55:5432/ry-vue
+ username: postgres
+ password: postgres
+ driver-class-name: org.postgresql.Driver
+ druid: # 閰嶇疆multi-datasource1 鏁版嵁婧愯繛鎺ユ睜鍙傛暟
+ # 杩炴帴姹犵殑閰嶇疆淇℃伅
+ # 鍒濆鍖栧ぇ灏忥紝鏈�灏忥紝鏈�澶�
+ initial-size: 2
+ min-idle: 2
+ maxActive: 2
+ # 閰嶇疆鑾峰彇杩炴帴绛夊緟瓒呮椂鐨勬椂闂�
+ maxWait: 600000
+ # 閰嶇疆闂撮殧澶氫箙鎵嶈繘琛屼竴娆℃娴嬶紝妫�娴嬮渶瑕佸叧闂殑绌洪棽杩炴帴锛屽崟浣嶆槸姣
+ timeBetweenEvictionRunsMillis: 60000
+ # 閰嶇疆涓�涓繛鎺ュ湪姹犱腑鏈�灏忕敓瀛樼殑鏃堕棿锛屽崟浣嶆槸姣
+ minEvictableIdleTimeMillis: 300000
+ validationQuery: SELECT 1
+ testWhileIdle: true
+ testOnBorrow: false
+ testOnReturn: false
+ # 鎵撳紑PSCache锛屽苟涓旀寚瀹氭瘡涓繛鎺ヤ笂PSCache鐨勫ぇ灏�
+ poolPreparedStatements: true
+ maxPoolPreparedStatementPerConnectionSize: 20
+ # 閰嶇疆鐩戞帶缁熻鎷︽埅鐨刦ilters锛屽幓鎺夊悗鐩戞帶鐣岄潰sql鏃犳硶缁熻锛�'wall'鐢ㄤ簬闃茬伀澧�
+ filters: stat,wall,slf4j
+ # 閫氳繃connectProperties灞炴�ф潵鎵撳紑mergeSql鍔熻兘锛涙參SQL璁板綍
+ connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
+
# netty閰嶇疆
netty:
udp:
port: 40000
enabled: true
tcp:
- enabled: true
+ enabled: false
# mqtt閰嶇疆
mqtt:
- host: tcp://192.168.1.15:1883
+ host: tcp://192.168.1.55:1883
clientId: cc3
username: admin
password: xzx12345
@@ -62,8 +125,8 @@
# 鏃ュ織绛夌骇閰嶇疆
logging:
level:
- hikSdk: debug
- mqtt: info
+ hikSdk: info
+ mqtt: debug
netty: info
external: info
camera: info
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index fadf7d2..ad9a171 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,4 +1,4 @@
spring:
profiles:
- active: prod
+ active: dev
--
Gitblit v1.9.3