From 33cf36a06ccadf96fb2486ed8e5a1aa5dd6ed664 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期五, 30 一月 2026 16:31:57 +0800
Subject: [PATCH] 1

---
 zy-acs-hex/pom.xml                                                                               |   20 ++++++
 component/component-Influxdb/target/classes/com/zy/influxdb/base/BaseTemperature.class           |    0 
 component/component-Influxdb/src/main/java/com/zy/influxdb/config/InfluxDBAutoConfiguration.java |    5 -
 component/component-Influxdb/src/main/java/com/zy/influxdb/service/InfluxDBService.java          |   86 ++++++++++------------------
 component/component-Influxdb/target/classes/com/zy/influxdb/service/InfluxDBService.class        |    0 
 zy-acs-hex/src/main/java/com/zy/Main.java                                                        |   17 +++++
 pom.xml                                                                                          |    1 
 component/component-Influxdb/pom.xml                                                             |    4 
 8 files changed, 72 insertions(+), 61 deletions(-)

diff --git a/component/component-Influxdb/pom.xml b/component/component-Influxdb/pom.xml
index ef92efe..c800944 100644
--- a/component/component-Influxdb/pom.xml
+++ b/component/component-Influxdb/pom.xml
@@ -17,14 +17,14 @@
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <!-- Dependency Versions -->
-        <influxdb-java.version>6.6.0</influxdb-java.version>
+        <influxdb-java.version>1.7.0</influxdb-java.version>
         <lombok.version>1.18.20</lombok.version>
     </properties>
 
     <dependencies>
         <dependency>
             <groupId>com.influxdb</groupId>
-            <artifactId>influxdb-client-java</artifactId>
+            <artifactId>influxdb3-java</artifactId>
             <version>${influxdb-java.version}</version>
         </dependency>
         <dependency>
diff --git a/component/component-Influxdb/src/main/java/com/zy/influxdb/config/InfluxDBAutoConfiguration.java b/component/component-Influxdb/src/main/java/com/zy/influxdb/config/InfluxDBAutoConfiguration.java
index 693c1ea..0daa6fc 100644
--- a/component/component-Influxdb/src/main/java/com/zy/influxdb/config/InfluxDBAutoConfiguration.java
+++ b/component/component-Influxdb/src/main/java/com/zy/influxdb/config/InfluxDBAutoConfiguration.java
@@ -1,7 +1,6 @@
 package com.zy.influxdb.config;
 
-import com.influxdb.client.InfluxDBClient;
-import com.influxdb.client.InfluxDBClientFactory;
+import com.influxdb.v3.client.InfluxDBClient;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
@@ -19,6 +18,6 @@
 
     @Bean(destroyMethod = "close")
     public InfluxDBClient influxDBClient(InfluxDBProperties influxDBProperties) throws Exception{
-        return InfluxDBClientFactory.create(influxDBProperties.getUrl(), influxDBProperties.getToken().toCharArray(), influxDBProperties.getDatabase());
+        return InfluxDBClient.getInstance(influxDBProperties.getUrl(), influxDBProperties.getToken().toCharArray(), influxDBProperties.getDatabase());
     }
 }
diff --git a/component/component-Influxdb/src/main/java/com/zy/influxdb/service/InfluxDBService.java b/component/component-Influxdb/src/main/java/com/zy/influxdb/service/InfluxDBService.java
index b9ee4ca..df7edff 100644
--- a/component/component-Influxdb/src/main/java/com/zy/influxdb/service/InfluxDBService.java
+++ b/component/component-Influxdb/src/main/java/com/zy/influxdb/service/InfluxDBService.java
@@ -1,12 +1,9 @@
 package com.zy.influxdb.service;
 
-import com.influxdb.annotations.Column;
-import com.influxdb.annotations.Measurement;
-import com.influxdb.client.InfluxDBClient;
-import com.influxdb.client.WriteApiBlocking;
-import com.influxdb.client.domain.WritePrecision;
-import com.influxdb.client.write.Point;
-import com.influxdb.query.FluxTable;
+import com.influxdb.v3.client.InfluxDBClient;
+import com.influxdb.v3.client.Point;
+import com.influxdb.v3.client.write.WritePrecision;
+import lombok.extern.slf4j.Slf4j;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -21,85 +18,62 @@
 
 
 @Service
-public class InfluxDBService  {
+public class InfluxDBService {
 
     private static final Logger logger = LoggerFactory.getLogger(InfluxDBService.class);
 
     @Autowired
     private InfluxDBClient influxDBClient;
 
-    // 鏋勯�犲嚱鏁版敞鍏ュ鎴风
-
 
 
     /**
      * 鍐欏叆鏁版嵁
+     *
      * @param measurement 琛ㄥ悕
-     * @param tags 鏍囩
-     * @param fields 瀛楁
+     * @param tags        鏍囩
+     * @param fields      瀛楁
      */
-    public void writeData(String measurement, Map<String,String> tags,Map<String,Object> fields) {
-        WriteApiBlocking writeApiBlocking = influxDBClient.getWriteApiBlocking();
+    public void writeData(String measurement, Map<String, String> tags, Map<String, Object> fields) {
         Point point = Point.measurement(measurement)
-                .addTags(tags)
-                .addFields(fields)
-                .time(Instant.now().toEpochMilli(), WritePrecision.MS);
+                .setTags(tags)
+                .setFields(fields)
+                .setTimestamp(Instant.now().toEpochMilli(), WritePrecision.MS);
         try {
-            writeApiBlocking.writePoint(point);
+            influxDBClient.writePoint(point);
             System.out.println("Data written to the database.");
-        }
-        catch (Exception e) {
-            System.err.println("Failed to write data to the database.");
+        } catch (Exception e) {
+            logger.error("Failed to write data to the database.");
             e.printStackTrace();
         }
     }
+
     /**
      * 鏌ヨ鏁版嵁
+     *
      * @param sql sql璇彞
      * @return 鏌ヨ缁撴灉鍒楄〃
      */
-    public  List<FluxTable> queryData(String sql) {
+    public List<Map<String, Object>> queryData(String sql) {
         try {
             // 鎵ц鏌ヨ
-            return influxDBClient.getQueryApi().query(sql);
+            Stream<Object[]> query = influxDBClient.query(sql);
+            // 杞崲涓� Map 鍒楄〃锛堜究浜庡悗缁鐞嗭級
+            List<Map<String, Object>> collect = query.map(record -> {
+                        Map<String, Object> map = new LinkedHashMap<>();
+                        for (int i = 0; i < record.length; i += 2) {
+                            map.put((String) record[i], record[i + 1]);
+                        }
+                        return map;
+                    })
+                    .collect(Collectors.toList());
+            return collect;
         } catch (Exception e) {
-            System.err.println("Failed to query data from the database.");
+            logger.error("Failed to query data from the database.");
             e.printStackTrace();
         }
         return null;
     }
 
 
-    /**
-     * 鏌ヨ鏁版嵁
-     * @param sql sql璇彞
-     * @return 鏌ヨ缁撴灉鍒楄〃
-     */
-    public  <T>  List<T> queryData(String sql,T t) {
-        try {
-            // 鎵ц鏌ヨ
-            List<T> temperatures = influxDBClient.getQueryApi().q(sql, t.getClass());
-
-
-        } catch (Exception e) {
-            System.err.println("Failed to query data from the database.");
-            e.printStackTrace();
-        }
-        return null;
-    }
-
-    //POJO绫诲畾涔夊涓嬶細
-    @Measurement(name = "temperature")//琛ㄥ悕
-    public static class Temperature {
-
-        @Column(tag = true)//tag
-        String location;
-
-        @Column//field
-        Double value;
-
-        @Column(timestamp = true)//timestamp
-        Instant time;
-
-    }
 }
diff --git a/component/component-Influxdb/target/classes/com/zy/influxdb/base/BaseTemperature.class b/component/component-Influxdb/target/classes/com/zy/influxdb/base/BaseTemperature.class
new file mode 100644
index 0000000..ecb6d81
--- /dev/null
+++ b/component/component-Influxdb/target/classes/com/zy/influxdb/base/BaseTemperature.class
Binary files differ
diff --git a/component/component-Influxdb/target/classes/com/zy/influxdb/service/InfluxDBService.class b/component/component-Influxdb/target/classes/com/zy/influxdb/service/InfluxDBService.class
index cc62930..c535a91 100644
--- a/component/component-Influxdb/target/classes/com/zy/influxdb/service/InfluxDBService.class
+++ b/component/component-Influxdb/target/classes/com/zy/influxdb/service/InfluxDBService.class
Binary files differ
diff --git a/pom.xml b/pom.xml
index 0219899..16e1a1e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,6 +25,7 @@
         <module>zy-acs-fake</module>
         <module>zy-acs-cv</module>
         <module>component</module>
+        <module>zy-acs-hex</module>
     </modules>
 
     <properties>
diff --git a/zy-acs-hex/pom.xml b/zy-acs-hex/pom.xml
new file mode 100644
index 0000000..01cd777
--- /dev/null
+++ b/zy-acs-hex/pom.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>com.zy</groupId>
+        <artifactId>acs</artifactId>
+        <version>1.0.0</version>
+    </parent>
+
+    <artifactId>zy-acs-hex</artifactId>
+
+    <properties>
+        <maven.compiler.source>17</maven.compiler.source>
+        <maven.compiler.target>17</maven.compiler.target>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    </properties>
+
+</project>
\ No newline at end of file
diff --git a/zy-acs-hex/src/main/java/com/zy/Main.java b/zy-acs-hex/src/main/java/com/zy/Main.java
new file mode 100644
index 0000000..7fe4b6a
--- /dev/null
+++ b/zy-acs-hex/src/main/java/com/zy/Main.java
@@ -0,0 +1,17 @@
+package com.zy;
+
+//TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
+// click the <icon src="AllIcons.Actions.Execute"/> icon in the gutter.
+public class Main {
+    public static void main(String[] args) {
+        //TIP Press <shortcut actionId="ShowIntentionActions"/> with your caret at the highlighted text
+        // to see how IntelliJ IDEA suggests fixing it.
+        System.out.printf("Hello and welcome!");
+
+        for (int i = 1; i <= 5; i++) {
+            //TIP Press <shortcut actionId="Debug"/> to start debugging your code. We have set one <icon src="AllIcons.Debugger.Db_set_breakpoint"/> breakpoint
+            // for you, but you can always add more by pressing <shortcut actionId="ToggleLineBreakpoint"/>.
+            System.out.println("i = " + i);
+        }
+    }
+}
\ No newline at end of file

--
Gitblit v1.9.1