diff --git a/pom.xml b/pom.xml
index 1e40ac8..434d39a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -31,10 +31,15 @@
mybatis-spring-boot-starter
2.1.4
+
+
+
+
+
mysql
mysql-connector-java
- 8.0.33
+ runtime
com.alibaba
@@ -110,12 +115,26 @@
mssql-jdbc
11.2.0.jre8
+
+
+ com.kingbase8
+ kingbase8
+ 8.6.0
+
+
commons-codec
commons-codec
1.11
compile
+
+
+ org.postgresql
+ postgresql
+ runtime
+
+
cn.hutool
hutool-all
diff --git a/src/main/java/com/rehome/mqttclienttemperature/service/KingbaseTemperatureService.java b/src/main/java/com/rehome/mqttclienttemperature/service/KingbaseTemperatureService.java
new file mode 100644
index 0000000..28c1df5
--- /dev/null
+++ b/src/main/java/com/rehome/mqttclienttemperature/service/KingbaseTemperatureService.java
@@ -0,0 +1,8 @@
+package com.rehome.mqttclienttemperature.service;
+
+import com.rehome.mqttclienttemperature.dto.ResponseDto;
+import com.rehome.mqttclienttemperature.entity.Temperature;
+
+public interface KingbaseTemperatureService {
+ ResponseDto saveTemperature(Temperature temperature);
+}
diff --git a/src/main/java/com/rehome/mqttclienttemperature/service/PostgresSqlTemperatureService.java b/src/main/java/com/rehome/mqttclienttemperature/service/PostgresSqlTemperatureService.java
new file mode 100644
index 0000000..3ba85d2
--- /dev/null
+++ b/src/main/java/com/rehome/mqttclienttemperature/service/PostgresSqlTemperatureService.java
@@ -0,0 +1,8 @@
+package com.rehome.mqttclienttemperature.service;
+
+import com.rehome.mqttclienttemperature.dto.ResponseDto;
+import com.rehome.mqttclienttemperature.entity.Temperature;
+
+public interface PostgresSqlTemperatureService {
+ ResponseDto saveTemperature(Temperature temperature);
+}
diff --git a/src/main/java/com/rehome/mqttclienttemperature/service/impl/KingbaseTemperatureServiceImpl.java b/src/main/java/com/rehome/mqttclienttemperature/service/impl/KingbaseTemperatureServiceImpl.java
new file mode 100644
index 0000000..ac1564b
--- /dev/null
+++ b/src/main/java/com/rehome/mqttclienttemperature/service/impl/KingbaseTemperatureServiceImpl.java
@@ -0,0 +1,82 @@
+package com.rehome.mqttclienttemperature.service.impl;
+
+
+import com.google.gson.Gson;
+import com.rehome.mqttclienttemperature.datasource.DataSource;
+import com.rehome.mqttclienttemperature.dto.ResponseDto;
+import com.rehome.mqttclienttemperature.entity.Temperature;
+import com.rehome.mqttclienttemperature.service.KingbaseTemperatureService;
+import com.rehome.mqttclienttemperature.service.OracleTemperatureService;
+import com.rehome.mqttclienttemperature.service.PostgresSqlTemperatureService;
+import com.rehome.mqttclienttemperature.service.SqlServerTemperatureService;
+import com.rehome.mqttclienttemperature.utils.JdbcUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+
+@Slf4j
+@Service
+public class KingbaseTemperatureServiceImpl implements KingbaseTemperatureService {
+ public static DataSource ds = new DataSource();
+ static {
+ //配置数据源
+ ds.setId("202");
+ ds.setName("kingBase_3_25");
+ ds.setUrl("jdbc:kingbase8://192.168.3.25:54321/appserver?useUnicode=true");
+ ds.setUsername("system");
+ ds.setPassword("452131wW");
+ ds.setDriver("com.kingbase8.Driver");
+ }
+
+ @Override
+ public ResponseDto saveTemperature(Temperature temperature) {
+ // 自定义一个线程池,内部包含8个线程
+ ExecutorService customPool = Executors.newFixedThreadPool(2);
+ CompletableFuture future = CompletableFuture.supplyAsync(() -> {
+ //SYSTIMESTAMP
+ //CURRENT_TIMESTAMP
+ //HIBERNATE_SEQUENCE
+ //temperature_seq_appserver
+ //pg
+ //String sql = "insert into temperature(temperature, humidity, data_date, data_hour, data_minute, topic, location_desc, create_date) values(?, ?, ?, ?, ?, ?, ?, CURRENT_TIMESTAMP)";
+ //sqlserver 和 pg 相同
+ String sql = "insert into temperature(temperature, humidity, data_date, data_hour, data_minute, topic, location_desc, create_date) values(?, ?, ?, ?, ?, ?, ?, CURRENT_TIMESTAMP)";
+ List