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