From 2629eb914f1519e9a1a81ef19ce92ac746c936ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=86=E7=A0=81=E6=BC=8F=E6=B4=9E?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=AE=8C=E6=88=90?= <> Date: Sat, 20 Sep 2025 02:17:28 +0800 Subject: [PATCH] db change --- .idea/workspace.xml | 14 ++- pom.xml | 22 +++++ .../AdminClientTemperatureApplication.java | 13 ++- .../mqttclienttemperature/MqttRSAClient.java | 5 +- .../dao/TemperatureOracleRepository.java | 86 +++++++++++++++++++ .../entity/TemperatureOracle.java | 70 +++++++++++++++ .../service/JdbcTemperatureService.java | 11 +++ .../service/ScheduledService.java | 11 +++ .../service/TemperatureService.java | 1 + .../impl/JdbcTemperatureServiceImpl.java | 84 ++++++++++++++++++ .../service/impl/TemperatureServiceImpl.java | 44 +++++++++- src/main/resources/application.yml | 57 ++++++------ 12 files changed, 384 insertions(+), 34 deletions(-) create mode 100644 src/main/java/com/rehome/mqttclienttemperature/dao/TemperatureOracleRepository.java create mode 100644 src/main/java/com/rehome/mqttclienttemperature/entity/TemperatureOracle.java create mode 100644 src/main/java/com/rehome/mqttclienttemperature/service/JdbcTemperatureService.java create mode 100644 src/main/java/com/rehome/mqttclienttemperature/service/impl/JdbcTemperatureServiceImpl.java diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 8b6fa26..0bfd5e5 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -5,10 +5,17 @@ - - - + + + + + + + + + + diff --git a/pom.xml b/pom.xml index 13c416a..f361662 100644 --- a/pom.xml +++ b/pom.xml @@ -36,6 +36,28 @@ mysql-connector-java runtime + + + org.postgresql + postgresql + runtime + + + + com.kingbase8 + kingbase8 + 8.6.0 + + + cn.com.kingbase + KesDialect-for-hibernate4 + 1.0.0 + + + com.baomidou + dynamic-datasource-spring-boot-starter + 3.1.0 + com.alibaba diff --git a/src/main/java/com/rehome/mqttclienttemperature/AdminClientTemperatureApplication.java b/src/main/java/com/rehome/mqttclienttemperature/AdminClientTemperatureApplication.java index ab6b4c2..e367682 100644 --- a/src/main/java/com/rehome/mqttclienttemperature/AdminClientTemperatureApplication.java +++ b/src/main/java/com/rehome/mqttclienttemperature/AdminClientTemperatureApplication.java @@ -1,6 +1,7 @@ package com.rehome.mqttclienttemperature; +import com.rehome.mqttclienttemperature.service.JdbcTemperatureService; import com.rehome.mqttclienttemperature.service.TemperatureService; import org.springframework.beans.BeansException; import org.springframework.boot.CommandLineRunner; @@ -14,6 +15,7 @@ import org.springframework.data.jpa.repository.config.EnableJpaAuditing; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.web.bind.annotation.RequestMapping; + import javax.annotation.Resource; import java.util.Map; @@ -29,10 +31,12 @@ public class AdminClientTemperatureApplication implements CommandLineRunner, App */ private ApplicationContext applicationContext; /** - 后台接口自动导入 + * 后台接口自动导入 */ @Resource private TemperatureService temperatureService; + @Resource + private JdbcTemperatureService jdbcTemperatureService; public static void main(String[] args) { SpringApplication.run(AdminClientTemperatureApplication.class, args); @@ -40,6 +44,7 @@ public class AdminClientTemperatureApplication implements CommandLineRunner, App /** * 调用 applicationContext(不能在main中使用,main是static的,不能调用) + * * @param args */ @Override @@ -51,12 +56,12 @@ public class AdminClientTemperatureApplication implements CommandLineRunner, App System.out.println(entry.getKey());//demo1Controller } try { - if (temperatureService != null) { + if (temperatureService != null && jdbcTemperatureService != null) { System.out.println("------------------------"); System.out.println("TemperatureController is not empty"); MqttRSAClient client = new MqttRSAClient(); - client.start(temperatureService); - }else { + client.start(temperatureService, jdbcTemperatureService); + } else { System.out.println("temperatureService is empty"); } } catch (Exception ex) { diff --git a/src/main/java/com/rehome/mqttclienttemperature/MqttRSAClient.java b/src/main/java/com/rehome/mqttclienttemperature/MqttRSAClient.java index 6318f9d..d67ee17 100644 --- a/src/main/java/com/rehome/mqttclienttemperature/MqttRSAClient.java +++ b/src/main/java/com/rehome/mqttclienttemperature/MqttRSAClient.java @@ -1,6 +1,7 @@ package com.rehome.mqttclienttemperature; +import com.rehome.mqttclienttemperature.service.JdbcTemperatureService; import com.rehome.mqttclienttemperature.service.TemperatureService; import com.rehome.mqttclienttemperature.utils.MqttSSLSocketFactory; import com.rehome.mqttclienttemperature.utils.UUIDUtil; @@ -82,7 +83,7 @@ public class MqttRSAClient { e.printStackTrace(); } } - public void start(TemperatureService temperatureService) { + public void start(TemperatureService temperatureService, JdbcTemperatureService jdbcTemperatureService) { try { // 连接 mqttClient.connect(options); @@ -108,6 +109,8 @@ public class MqttRSAClient { System.out.println("Qos:"+mqttMessage.getQos()); System.out.println("message RSA:"+strData); temperatureService.saveTemperature(strData,s); + temperatureService.saveTemperatureBySqlServer(strData,s); + //jdbcTemperatureService.saveTemperatureByOracle(strData,s); } @Override diff --git a/src/main/java/com/rehome/mqttclienttemperature/dao/TemperatureOracleRepository.java b/src/main/java/com/rehome/mqttclienttemperature/dao/TemperatureOracleRepository.java new file mode 100644 index 0000000..71582c7 --- /dev/null +++ b/src/main/java/com/rehome/mqttclienttemperature/dao/TemperatureOracleRepository.java @@ -0,0 +1,86 @@ +package com.rehome.mqttclienttemperature.dao; + + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.rehome.mqttclienttemperature.entity.Temperature; +import com.rehome.mqttclienttemperature.entity.TemperatureOracle; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.data.domain.Sort; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; +import java.util.List; + + +/** + * 参数一 T :当前需要映射的实体 + * 参数二 ID :当前映射的实体中的OID的类型 + * + */ + +public interface TemperatureOracleRepository extends JpaRepository { + + + +// 五、分页查询 +// +// Page findALL(Pageable pageable); +// Page findByUserName(String userName,Pageable pageable); +// +// 在查询的方法中,需要传入参数Pageable , +// 当查询中有多个参数的时候Pageable建议做为最后一个参数传入 。 +// Pageable 是 Spring 封装的分页实现类,使用的时候需要传入页数、每页条数和排序规则。 +// +// int page=1,size=10; +// Sort sort = new Sort(Direction.DESC, "id"); +// Pageable pageable = new PageRequest(page, size, sort); +// userRepository.findALL(pageable); +// userRepository.findByUserName("testName", pageable); +// +// +// 六、限制查询 +// +// 查询前 N 个元素 +// +// User findFirstByOrderByLastnameAsc(); +// User findTopByOrderByAgeDesc(); +// Page queryFirst10ByLastname(String lastname, Pageable pageable); +// List findFirst10ByLastname(String lastname, Sort sort); +// List findTop10ByLastname(String lastname, Pageable pageable); +// + + + +// 使用Spring JPA中Page、Pageable接口和Sort类完成分页排序【专题】 +// +// 首先来说一下分页和排序所用到的Page、Pageable接口和Sort类都是什么 +// +// JpaRepository提供了两个和分页和排序有关的查询 +// +// List findAll(Sort sort) 返回所有实体,按照指定顺序排序返回 +// +// List findAll(Pageable pageable) 返回实体列表,实体的offest和limit通过pageable来指定 +// +// Sort对象用来指示排序,最简单的Sort对象构造可以传入一个属性名列表(不是数据库列名,是属性名),默认采用升序排序。例: +// +// Sort sort = new Sort("id"); +// //或 Sort sort = new Sort(Direction.ASC,"id"); +// return userDao.findAll(sort); +// 程序将查询所有user并按照id进行生序排序。Sort还包括其他一些构造方法,在这里就不一一赘述。 +// +// Pageable接口用于构造翻页查询,PageRequest是其实现类,可以通过提供的工厂方法创建PageRequest: +// +// public static PageRequest of(int page, int size) +// 也可以在PageRequest中加入排序: +// +// public static PageRequest of(int page, int size, Sort sort) +// 方法中的参数,page总是从0开始,表示查询页,size指每页的期望行数。 +// +// Page接口可以获得当前页面的记录、总页数、总记录数、是否有上一页或下一页等。Spring Data翻页查询总是返回Page对象,Page对象提供了以下常用的方法: +// +// int getTotalPages() 总的页数 +// long getTotalElements() 返回总数 +// List getContent() 返回此次查询的结果集 +// ———————————————— + +} diff --git a/src/main/java/com/rehome/mqttclienttemperature/entity/TemperatureOracle.java b/src/main/java/com/rehome/mqttclienttemperature/entity/TemperatureOracle.java new file mode 100644 index 0000000..77a185e --- /dev/null +++ b/src/main/java/com/rehome/mqttclienttemperature/entity/TemperatureOracle.java @@ -0,0 +1,70 @@ +package com.rehome.mqttclienttemperature.entity; + +import com.baomidou.dynamic.datasource.annotation.DS; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.hibernate.annotations.Proxy; +import org.springframework.data.annotation.CreatedDate; +import org.springframework.data.jpa.domain.support.AuditingEntityListener; +import javax.persistence.*; +import java.io.Serializable; +import java.util.Date; + +@Proxy(lazy = false) +@Data +@Entity +//普通索引,不指定索引名,表自动创建索引名 +//@Table(indexes = {@Index(columnList = "dataDate"),@Index(columnList = "locationDesc")}) +//普通索引,指定索引名,创建单个索引 +//在这个例子中,Temperature实体类通过@Table注解的indexes属性定义了一个名为idx_dataDate的索引,它覆盖了dataDate字段。这意味着在数据库层面,针对dataDate字段的查询将会利用这个索引,从而提高查询效率。 +//@Table(indexes = {@Index(name = "idx_dataDate", columnList = "dataDate")}) +//同时创建多个普通索引,注意每个索引名都不同 +//@Table(indexes = {@Index(name = "idx_dataDate", columnList = "dataDate"),@Index(name = "idx_locationDesc", columnList = "locationDesc")}) +//@Table(indexes = {@Index(name = "idx_dataDate", columnList = "dataDate"),@Index(name = "idx_locationDesc", columnList = "locationDesc"),@Index(name = "idx_dataHour", columnList = "dataHour"),@Index(name = "idx_dataMinute", columnList = "dataMinute")}) +//创建组合索引,注意每个索引名都相同 +//@Table(indexes = {@Index(name = "data_date_location_desc", columnList = "dataDate"),@Index(name = "data_date_location_desc", columnList = "locationDesc")}) +//同时创建普通索引和组合索引,注意普通索引每个索引名都不同,注意组合索引每个索引名都相同 +@DS("oracle") +@Table(name = "temperature",indexes = {@Index(name = "idx_dataDate", columnList = "dataDate"),@Index(name = "idx_locationDesc", columnList = "locationDesc"),@Index(name = "idx_dataHour", columnList = "dataHour"),@Index(name = "idx_dataMinute", columnList = "dataMinute"),@Index(name = "data_date_location_desc", columnList = "dataDate"),@Index(name = "data_date_location_desc", columnList = "locationDesc")}) +public class TemperatureOracle implements Serializable { + + @Id + @ApiModelProperty(value = "主键") + @GeneratedValue(strategy = GenerationType.SEQUENCE,generator="temperature_seq") + @SequenceGenerator(name="temperature_seq", sequenceName="temperature_seq_appserver",initialValue = 1,allocationSize = 1) + private Long id; + + @ApiModelProperty(value = "温度") + @Column(length=10) + private String temperature; + + @ApiModelProperty(value = "湿度") + @Column(length=10) + private String humidity; + + @ApiModelProperty(value = "日期") + @Column(length=20) + private String dataDate; + + @ApiModelProperty(value = "时") + @Column(length=20) + private String dataHour; + + @ApiModelProperty(value = "分") + @Column(length=20) + private String dataMinute; + + @ApiModelProperty(value = "主题") + @Column(length=60) + private String topic; + + @ApiModelProperty(value = "位置描述") + @Column(length=80) + private String locationDesc; + + //@CreatedDate + @ApiModelProperty(value = "创建时间") + @Temporal(TemporalType.TIMESTAMP) + private Date createDate; + +} \ No newline at end of file diff --git a/src/main/java/com/rehome/mqttclienttemperature/service/JdbcTemperatureService.java b/src/main/java/com/rehome/mqttclienttemperature/service/JdbcTemperatureService.java new file mode 100644 index 0000000..b006fac --- /dev/null +++ b/src/main/java/com/rehome/mqttclienttemperature/service/JdbcTemperatureService.java @@ -0,0 +1,11 @@ +package com.rehome.mqttclienttemperature.service; + +import com.rehome.mqttclienttemperature.entity.Temperature; +import com.rehome.mqttclienttemperature.entity.TemperatureOracle; + +import java.util.List; + +public interface JdbcTemperatureService { + void saveTemperatureByOracle(String temperatureAndHumidityData,String topic); + List selectAll(); +} diff --git a/src/main/java/com/rehome/mqttclienttemperature/service/ScheduledService.java b/src/main/java/com/rehome/mqttclienttemperature/service/ScheduledService.java index d40571d..3e34a96 100644 --- a/src/main/java/com/rehome/mqttclienttemperature/service/ScheduledService.java +++ b/src/main/java/com/rehome/mqttclienttemperature/service/ScheduledService.java @@ -5,10 +5,13 @@ package com.rehome.mqttclienttemperature.service; import com.google.gson.Gson; import com.rehome.mqttclienttemperature.controller.JdbcDemoController; import com.rehome.mqttclienttemperature.dto.ResponseDto; +import com.rehome.mqttclienttemperature.entity.Temperature; +import com.rehome.mqttclienttemperature.entity.TemperatureOracle; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.util.List; /** @@ -22,6 +25,8 @@ public class ScheduledService { @Resource private JdbcDemoController jdbcDemoController; + @Resource + private JdbcTemperatureService jdbcTemperatureService; /** * @date 2022-03-16 09:41 @@ -34,5 +39,11 @@ public class ScheduledService { ResponseDto responseDto = jdbcDemoController.queryList(); //System.out.println(new Gson().toJson(responseDto)); } + @Scheduled(cron = "0/5 * * * * *") + public void getNow() { + System.out.println("-------getNow---------"); + List list =jdbcTemperatureService.selectAll(); + System.out.println(new Gson().toJson(list)); + } } \ No newline at end of file diff --git a/src/main/java/com/rehome/mqttclienttemperature/service/TemperatureService.java b/src/main/java/com/rehome/mqttclienttemperature/service/TemperatureService.java index fdb5fc3..f514e8b 100644 --- a/src/main/java/com/rehome/mqttclienttemperature/service/TemperatureService.java +++ b/src/main/java/com/rehome/mqttclienttemperature/service/TemperatureService.java @@ -9,6 +9,7 @@ public interface TemperatureService { //温度和湿度 void saveTemperature(String temperatureAndHumidityData,String topic); void saveTemperature(Temperature temperature); + void saveTemperatureBySqlServer(String temperatureAndHumidityData,String topic); List findFirst10ByDataDateAndLocationDesc(String dataDate, String locationDesc); List findFirst10ByLocationDesc(String locationDesc); Temperature findFirstByOrderByLocationDescAsc(String locationDesc); diff --git a/src/main/java/com/rehome/mqttclienttemperature/service/impl/JdbcTemperatureServiceImpl.java b/src/main/java/com/rehome/mqttclienttemperature/service/impl/JdbcTemperatureServiceImpl.java new file mode 100644 index 0000000..25920ca --- /dev/null +++ b/src/main/java/com/rehome/mqttclienttemperature/service/impl/JdbcTemperatureServiceImpl.java @@ -0,0 +1,84 @@ +package com.rehome.mqttclienttemperature.service.impl; + +import cn.hutool.db.sql.Direction; +import com.baomidou.dynamic.datasource.annotation.DS; +import com.rehome.mqttclienttemperature.dao.TemperatureOracleRepository; +import com.rehome.mqttclienttemperature.entity.Temperature; +import com.rehome.mqttclienttemperature.entity.TemperatureOracle; +import com.rehome.mqttclienttemperature.service.JdbcTemperatureService; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.Pageable; +import org.springframework.data.domain.Sort; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; + +@Service +@DS("oracle") +public class JdbcTemperatureServiceImpl implements JdbcTemperatureService { + @Resource + private JdbcTemplate jdbcTemplate; + @Resource + private TemperatureOracleRepository temperatureOracleRepository; + + + @Override + public void saveTemperatureByOracle(String temperatureAndHumidityData, String topic) { + if(temperatureAndHumidityData!=null&&temperatureAndHumidityData.length()>0){ + String[] strDataTemperature = temperatureAndHumidityData.split(" "); + Date now = new Date(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + SimpleDateFormat sdfHour = new SimpleDateFormat("yyyy-MM-dd HH"); + SimpleDateFormat sdfMinute = new SimpleDateFormat("yyyy-MM-dd HH:mm"); + SimpleDateFormat sdfSecond = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + + String nowDate = sdf.format(now); + String nowHour = sdfHour.format(now); + String dataMinute = sdfMinute.format(now); + String dataSecond = sdfSecond.format(now); + TemperatureOracle temperature = new TemperatureOracle(); + temperature.setCreateDate(now); + temperature.setDataDate(nowDate); + temperature.setDataHour(nowHour); + temperature.setDataMinute(dataMinute); + if(topic!=null){ + temperature.setTopic(topic); + if(topic.equals("WifiSHT/7C87CE9CA4E6/SHT20")){ + temperature.setLocationDesc("广东省珠海市高新区唐家湾镇东岸村水风三街28号501"); + } + if(topic.equals("WifiSHT/7C87CE9F5CBF/SHT20")){ + temperature.setLocationDesc("广东省珠海市金湾区三灶镇百川路1号1栋1单元1508房"); + } + if(topic.equals("WifiSHT/4CEBD686B6AA/SHT20")){ + temperature.setLocationDesc("广西壮族自治区崇左市天等县天等镇荣华村弄在屯113号"); + } + } + temperature.setHumidity(strDataTemperature[0]); + temperature.setTemperature(strDataTemperature[1]); + + this.temperatureOracleRepository.save(temperature); + } + } + + @Override + public List selectAll() { +// Sort sort = Sort.by(Sort.Direction.DESC,"id"); +// PageRequest pagerequest = PageRequest.of(0,10,sort); +// List page = temperatureOracleRepository.findAll(pagerequest).getContent(); +// return page; + +// int page=1,size=10; +// Sort sort = new Sort(Direction.DESC, "id"); +// Pageable pageable = new PageRequest(page, size, sort); +// temperatureOracleRepository.findALL(pageable); +// userRepository.findByUserName("testName", pageable); + + + return jdbcTemplate.queryForList("SELECT * FROM (SELECT * FROM temperature ORDER BY id DESC) WHERE ROWNUM <= 10"); + } +} diff --git a/src/main/java/com/rehome/mqttclienttemperature/service/impl/TemperatureServiceImpl.java b/src/main/java/com/rehome/mqttclienttemperature/service/impl/TemperatureServiceImpl.java index 6e44f1b..7f7b969 100644 --- a/src/main/java/com/rehome/mqttclienttemperature/service/impl/TemperatureServiceImpl.java +++ b/src/main/java/com/rehome/mqttclienttemperature/service/impl/TemperatureServiceImpl.java @@ -1,5 +1,6 @@ package com.rehome.mqttclienttemperature.service.impl; +import com.baomidou.dynamic.datasource.annotation.DS; import com.google.gson.Gson; import com.rehome.mqttclienttemperature.dao.TemperatureRepository; import com.rehome.mqttclienttemperature.dto.ResponseDto; @@ -24,6 +25,9 @@ import java.util.Optional; @Service public class TemperatureServiceImpl implements TemperatureService { + + + @Resource private TemperatureRepository temperatureRepository; @Resource @@ -64,8 +68,8 @@ public class TemperatureServiceImpl implements TemperatureService { temperature.setTemperature(strDataTemperature[1]); this.temperatureRepository.save(temperature); - ResponseDto responseDto = this.oracleTemperatureService.saveTemperature(temperature); - log.info(new Gson().toJson(responseDto)); +// ResponseDto responseDto = this.oracleTemperatureService.saveTemperature(temperature); +// log.info(new Gson().toJson(responseDto)); } } @@ -74,6 +78,42 @@ public class TemperatureServiceImpl implements TemperatureService { this.temperatureRepository.save(temperature); } + @Override + @DS("sqlserver") + public void saveTemperatureBySqlServer(String temperatureAndHumidityData,String topic) { + String[] strDataTemperature = temperatureAndHumidityData.split(" "); + Date now = new Date(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + SimpleDateFormat sdfHour = new SimpleDateFormat("yyyy-MM-dd HH"); + SimpleDateFormat sdfMinute = new SimpleDateFormat("yyyy-MM-dd HH:mm"); + SimpleDateFormat sdfSecond = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + + String nowDate = sdf.format(now); + String nowHour = sdfHour.format(now); + String dataMinute = sdfMinute.format(now); + String dataSecond = sdfSecond.format(now); + Temperature temperature = new Temperature(); + temperature.setCreateDate(now); + temperature.setDataDate(nowDate); + temperature.setDataHour(nowHour); + temperature.setDataMinute(dataMinute); + if(topic!=null){ + temperature.setTopic(topic); + if(topic.equals("WifiSHT/7C87CE9CA4E6/SHT20")){ + temperature.setLocationDesc("广东省珠海市高新区唐家湾镇东岸村水风三街28号501"); + } + if(topic.equals("WifiSHT/7C87CE9F5CBF/SHT20")){ + temperature.setLocationDesc("广东省珠海市金湾区三灶镇百川路1号1栋1单元1508房"); + } + if(topic.equals("WifiSHT/4CEBD686B6AA/SHT20")){ + temperature.setLocationDesc("广西壮族自治区崇左市天等县天等镇荣华村弄在屯113号"); + } + } + temperature.setHumidity(strDataTemperature[0]); + temperature.setTemperature(strDataTemperature[1]); + this.temperatureRepository.save(temperature); + } + @Override public List findFirst10ByDataDateAndLocationDesc(String dataDate, String locationDesc) { int page=1,size=10; diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index ad2b69b..586ddea 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -9,31 +9,40 @@ logging: spring: datasource: - type: com.zaxxer.hikari.HikariDataSource -# driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver -# url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=appserver;encrypt=false; -# username: sa -# password: Skyinno251, - #url: jdbc:mysql://192.168.3.29:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - url: jdbc:mysql://127.0.0.1:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://192.168.2.18:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://192.168.1.92:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://192.168.3.7:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://192.168.3.7:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://192.168.1.24:3306/weather?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://192.168.3.24:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://192.168.1.24:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://47.242.184.139:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - #url: jdbc:mysql://192.168.3.9:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true - driverClassName: com.mysql.cj.jdbc.Driver #com.mysql.cj.jdbc.Driver com.mysql.jdbc.Driver - username: root - password: Skyinno251, -# driverClassName: oracle.jdbc.driver.OracleDriver -# url: jdbc:oracle:thin:@192.168.3.9:1521/orcl -# username: appserver -# password: appserver + dynamic: + enabled: true #启用动态数据源,默认true + primary: mysql #设置默认的数据源或者数据源组,默认值即为master + strict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源 + grace-destroy: false #是否优雅关闭数据源,默认为false,设置为true时,关闭数据源时如果数据源中还存在活跃连接,至多等待10s后强制关闭 + datasource: + mysql: + url: jdbc:mysql://127.0.0.1:3306/weather?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true + driverClassName: com.mysql.cj.jdbc.Driver #com.mysql.cj.jdbc.Driver com.mysql.jdbc.Driver + username: root + password: Skyinno251, + sqlserver: + driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver + url: jdbc:sqlserver://192.168.3.29:1433;DatabaseName=weather;encrypt=false; + username: sa + password: 452131wW + oracle: + driverClassName: oracle.jdbc.driver.OracleDriver + url: jdbc:oracle:thin:@192.168.3.9:1521/orcl + username: appserver + password: appserver +# postgresql: +# url: jdbc:postgresql://192.168.3.24:5432/weather +# driverClassName: org.postgresql.Driver #com.mysql.cj.jdbc.Driver com.mysql.jdbc.Driver +# username: postgres +# password: 452131wW +# kingbase: +# name: kingbase +# url: jdbc:kingbase8://192.168.3.29:54321/kingbase?useUnicode=true +# driverClassName: com.kingbase8.Driver +# username: system +# password: 452131wW + jpa: - database: mysql # 配置 DBMS 类型 show-sql: true # 配置是否将执行的 SQL 输出到日志 open-in-view: true hibernate: