0


IoTDB 入门教程 实战篇③——Java示例(开源)

文章目录

一、前文

IoTDB入门教程——导读

本文详细阐述了如何通过一个Java项目成功连接到IoTDB时序数据库,进而展示了如何向该数据库高效地写入数据以及执行精确的数据查询操作。

此示例旨在为读者提供一个清晰、实用的指导,以便他们在自己的项目中实现与IoTDB的交互。

此示例开源地址:小康师兄/IoTDB示例

二、新建Java项目

  • 文件—>新建—>项目在这里插入图片描述
  • 选择Maven在这里插入图片描述
  • 项目名称:Java-Example在这里插入图片描述

三、运行Java项目

  • 添加com.weijian.iotdb.Main.java在这里插入图片描述
  • 运行/调试配置,选择应用程序在这里插入图片描述
  • 构建并运行的主类Main在这里插入图片描述
  • 点击运行在这里插入图片描述

四、Maven添加依赖

  • 添加依赖dependencies—>org.apache.iotdb
<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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><groupId>com.weijian.iotdb</groupId><artifactId>Java-Example</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target></properties><dependencies><dependency><groupId>org.apache.iotdb</groupId><artifactId>iotdb-session</artifactId><version>1.3.2</version></dependency><dependency><groupId>org.apache.iotdb</groupId><artifactId>node-commons</artifactId><version>1.3.2</version></dependency></dependencies></project>

五、示例源码

此示例开源地址:小康师兄/IoTDB示例

https://gitee.com/weijian.kang/IoTDB-Example/tree/master/Java-Example

示例相对简单,程序流程主要有3步骤

  • 初始化与连接
  • 写入数据
  • 查询数据
packagecom.weijian.iotdb;importorg.apache.iotdb.isession.SessionDataSet;importorg.apache.iotdb.isession.util.Version;importorg.apache.iotdb.rpc.IoTDBConnectionException;importorg.apache.iotdb.rpc.StatementExecutionException;importorg.apache.iotdb.session.Session;importorg.apache.iotdb.tsfile.file.metadata.enums.TSDataType;importjava.util.ArrayList;importjava.util.List;publicclassMain{publicstaticvoidmain(String[] args)throwsIoTDBConnectionException,StatementExecutionException{System.out.println("Hello IoTDB Java Example");// 初始化与连接Session session =newSession.Builder().host("xx.xx.xx.xx").port(6667).username("root").password("root").version(Version.V_1_0).build();// 开启Session RPC不压缩
        session.open(false);// 写入数据List<Object> values =newArrayList<>();
        values.add(88);insertRecord(session, values);// 查询数据queryRecord(session);// 关闭连接
        session.close();}privatestaticvoidinsertRecord(Session session,List<Object> values)throwsIoTDBConnectionException,StatementExecutionException{List<String> measurements =newArrayList<>();List<TSDataType> types =newArrayList<>();
        measurements.add("status");
        types.add(TSDataType.INT32);
        session.insertRecord("root.test.test",System.currentTimeMillis(), measurements, types, values);System.out.println("————————————————写入数据成功————————————————");}privatestaticvoidqueryRecord(Session session)throwsIoTDBConnectionException,StatementExecutionException{System.out.println("————————————————查询数据开始————————————————");try(SessionDataSet dataSet = session.executeQueryStatement("select status from root.test.test")){System.out.println(dataSet.getColumnNames());
            dataSet.setFetchSize(1024);// default is 10000while(dataSet.hasNext()){System.out.println(dataSet.next());}}System.out.println("————————————————查询数据结束————————————————");}}
  • 运行截图在这里插入图片描述

七、查询数据

  • 再次查询数据,看看是数据是否存入数据库
  • 查询发现,value(88)的数据已经存入数据库
IoTDB>selectstatusfrom root.test.test
+-----------------------------+---------------------+|Time|root.test.test.status|+-----------------------------+---------------------+|1970-01-21T06:21:09.846+08:00|55.0||2024-07-21T08:34:04.378+08:00|1.0||2024-07-21T08:34:21.513+08:00|2.0||2024-07-21T08:34:23.284+08:00|3.0||2024-07-21T08:34:25.675+08:00|11.0||2024-07-21T08:34:28.155+08:00|22.0||2024-07-21T08:34:30.341+08:00|33.0||2024-07-27T16:44:06.000+08:00|66.0||2024-07-28T19:57:38.855+08:00|88.0||2024-07-28T20:11:41.161+08:00|88.0||2024-07-28T20:12:49.883+08:00|88.0|+-----------------------------+---------------------+
Total line number =11
It costs 0.073s

八、参考

Java原生接口| IoTDB Website

觉得好,就一键三连呗(点赞+收藏+关注)


本文转载自: https://blog.csdn.net/kangweijian/article/details/140747615
版权归原作者 小康师兄 所有, 如有侵权,请联系我们删除。

“IoTDB 入门教程 实战篇③——Java示例(开源)”的评论:

还没有评论