当前位置: 首页 > news >正文

TDEngine(taos) 涛思数据库-java写入数据

一、java写入taos简单案例:

pom.xml 中加入以下依赖。

<dependency><groupId>com.taosdata.jdbc</groupId><artifactId>taos-jdbcdriver</artifactId><version>3.3.0</version>
</dependency>

java代码

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Arrays;
import java.util.List;public class RestInsertExample {private static Connection getConnection() throws SQLException {/*** 默认用户名 root* 默认端口号 6041*/String jdbcUrl = "jdbc:TAOS-RS://安装taos的ip地址:6041?user=root&password=taosdata";return DriverManager.getConnection(jdbcUrl);}private static List<String> getRawData() {return Arrays.asList("d1001,2018-10-03 14:38:05.000,10.30000,219,0.31000,'California.SanFrancisco',2","d1001,2018-10-03 14:38:15.000,12.60000,218,0.33000,'California.SanFrancisco',2","d1001,2018-10-03 14:38:16.800,12.30000,221,0.31000,'California.SanFrancisco',2","d1002,2018-10-03 14:38:16.650,10.30000,218,0.25000,'California.SanFrancisco',3","d1003,2018-10-03 14:38:05.500,11.80000,221,0.28000,'California.LosAngeles',2","d1003,2018-10-03 14:38:16.600,13.40000,223,0.29000,'California.LosAngeles',2","d1004,2018-10-03 14:38:05.000,10.80000,223,0.29000,'California.LosAngeles',3","d1004,2018-10-03 14:38:06.500,11.50000,221,0.35000,'California.LosAngeles',3");}/*** 对应涛思数据库插入语句:* INSERT INTO power.d1001 USING power.meters TAGS(California.SanFrancisco, 2) VALUES('2018-10-03 14:38:05.000',10.30000,219,0.31000)* power.d1001 USING power.meters TAGS(California.SanFrancisco, 2) VALUES('2018-10-03 14:38:15.000',12.60000,218,0.33000)* power.d1001 USING power.meters TAGS(California.SanFrancisco, 2) VALUES('2018-10-03 14:38:16.800',12.30000,221,0.31000)* power.d1002 USING power.meters TAGS(California.SanFrancisco, 3) VALUES('2018-10-03 14:38:16.650',10.30000,218,0.25000)* power.d1003 USING power.meters TAGS(California.LosAngeles, 2) VALUES('2018-10-03 14:38:05.500',11.80000,221,0.28000)* power.d1003 USING power.meters TAGS(California.LosAngeles, 2) VALUES('2018-10-03 14:38:16.600',13.40000,223,0.29000)* power.d1004 USING power.meters TAGS(California.LosAngeles, 3) VALUES('2018-10-03 14:38:05.000',10.80000,223,0.29000)* power.d1004 USING power.meters TAGS(California.LosAngeles, 3) VALUES('2018-10-03 14:38:06.500',11.50000,221,0.35000)*/private static String getSQL() {// 拼接插入sqlStringBuilder sb = new StringBuilder("INSERT INTO ");for (String line : getRawData()) {String[] ps = line.split(",");sb.append("power." + ps[0]).append(" USING power.meters TAGS(").append(ps[5]).append(", ") // tag: location.append(ps[6]) // tag: groupId.append(") VALUES(").append('\'').append(ps[1]).append('\'').append(",") // ts.append(ps[2]).append(",") // current.append(ps[3]).append(",") // voltage.append(ps[4]).append(") "); // phase}return sb.toString();}public static void insertData() throws SQLException {try (Connection conn = getConnection()) {try (Statement stmt = conn.createStatement()) {//写入的数据的时间戳必须大于当前时间减去数据库配置参数 KEEP 的时间。// 如果 KEEP 配置为 3650 天,那么无法写入比 3650 天还早的数据stmt.execute("CREATE DATABASE power KEEP 3650");stmt.execute("CREATE STABLE power.meters (ts TIMESTAMP, current FLOAT, voltage INT, phase FLOAT) " +"TAGS (location BINARY(64), groupId INT)");String sql = getSQL();int rowCount = stmt.executeUpdate(sql);System.out.println("rowCount=" + rowCount); // rowCount=8}}}public static void main(String[] args) throws SQLException {insertData();}
}

执行结果插入成功:

 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • [Git][分支管理][上]详细讲解
  • day12 多线程
  • 力扣SQL50 按日期分组销售产品 group_concact
  • Javascript常见设计模式
  • PHP中如何实现函数的可变参数列表
  • Windows调大虚拟内存来代替升级物理运行内存(RAM)真的有用吗?
  • 03。仓颉程序结构
  • 安全基础学习-CRC理解与计算
  • JavaScript入门day6
  • VUE2项目打包dist后dist包中index打开空白页
  • Linux系统窗口水印难点分析
  • 使用FastChat快速部署LLM服务
  • Flask 介绍
  • 【多线程】阻塞队列
  • TOA/TDOA测距定位,三维任意(>3)个锚节点,对一个未知点进行定位|MATLAB源代码
  • 《深入 React 技术栈》
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • C语言笔记(第一章:C语言编程)
  • ES6--对象的扩展
  • Go 语言编译器的 //go: 详解
  • IOS评论框不贴底(ios12新bug)
  • JAVA 学习IO流
  • Javascript 原型链
  • Java编程基础24——递归练习
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • Python实现BT种子转化为磁力链接【实战】
  • spring boot下thymeleaf全局静态变量配置
  • 机器人定位导航技术 激光SLAM与视觉SLAM谁更胜一筹?
  • 基于web的全景—— Pannellum小试
  • 基于游标的分页接口实现
  • 面试遇到的一些题
  • 前端js -- this指向总结。
  • 如何用vue打造一个移动端音乐播放器
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 手写一个CommonJS打包工具(一)
  • k8s使用glusterfs实现动态持久化存储
  • 阿里云ACE认证学习知识点梳理
  • # dbt source dbt source freshness命令详解
  • #单片机(TB6600驱动42步进电机)
  • (175)FPGA门控时钟技术
  • (非本人原创)我们工作到底是为了什么?​——HP大中华区总裁孙振耀退休感言(r4笔记第60天)...
  • (学习日记)2024.02.29:UCOSIII第二节
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转载)Linux网络编程入门
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .NET 中使用 TaskCompletionSource 作为线程同步互斥或异步操作的事件
  • .NET(C#) Internals: as a developer, .net framework in my eyes
  • .net6 core Worker Service项目,使用Exchange Web Services (EWS) 分页获取电子邮件收件箱列表,邮件信息字段
  • .netcore如何运行环境安装到Linux服务器
  • .Net环境下的缓存技术介绍
  • .net流程开发平台的一些难点(1)
  • .NET企业级应用架构设计系列之技术选型