文章目录
一、前文
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
觉得好,就一键三连呗(点赞+收藏+关注)
版权归原作者 小康师兄 所有, 如有侵权,请联系我们删除。