influxdb java api使用_java使用influxDB数据库的详细源码
此文实例给亲们分享了java使用influxDB数据库的具体代码,供大家参考,具体内容如下
1.pom.xml中导入jar包依赖
org.influxdb
influxdb-java
2.5
2.编写influxDB工具类:
package com.hontye.parameter.util;
import org.influxdb.InfluxDB;
import org.influxdb.InfluxDBFactory;
import org.influxdb.dto.Point;
import org.influxdb.dto.Point.Builder;
import org.influxdb.dto.Query;
import org.influxdb.dto.QueryResult;
import java.util.Map;
/**
* 时序数据库 InfluxDB 连接
* @author Dai_LW
*
*/
public class InfluxDbUtil {
private static String openurl = "http://127.0.0.1:8086";//连接地址
private static String username = "root";//用户名
private static String password = "root";//密码
private static String database = "PARAMTER_DB";//数据库
private static String measurement = "tw_parameter_tb";//表名
private InfluxDB influxDB;
public InfluxDbUtil(String username, String password, String openurl, String database){
this.username = username;
this.password = password;
this.openurl = openurl;
this.database = database;
}
public static InfluxDbUtil setUp(){
//创建 连接
InfluxDbUtil influxDbUtil = new InfluxDbUtil(username, password, openurl, database);
influxDbUtil.influxDbBuild();
influxDbUtil.createRetentionPolicy();
// influxDB.deleteDB(database);
// influxDB.createDB(database);
return influxDbUtil;
}
/**连接时序数据库;获得InfluxDB**/
public InfluxDB influxDbBuild(){
if(influxDB == null){
influxDB = InfluxDBFactory.connect(openurl, username, password);
influxDB.createDatabase(database);
}
return influxDB;
}
/**
* 设置数据保存策略
* defalut 策略名 /database 数据库名/ 30d 数据保存时限30天/ 1 副本个数为1/ 结尾DEFAULT 表示 设为默认的策略
*/
public void createRetentionPolicy(){
String command = String.format("CREATE RETENTION POLICY "%s" ON "%s" DURATION %s REPLICATION %s DEFAULT",
"defalut", database, "30d", 1);
this.query(command);
}
/**
* 查询
* @param command 查询语句
* @return
*/
public QueryResult query(String command){
return influxDB.query(new Query(command, database));
}
/**
* 插入
* @param tags 标签
* @param fields 字段
*/
public void insert(Map tags, Map fields){
Builder builder = Point.measurement(measurement);
builder.tag(tags);
builder.fields(fields);
influxDB.write(database, "", builder.build());
}
/**
* 删除
* @param command 删除语句
* @return 返回错误信息
*/
public String deleteMeasurementData(String command){
QueryResult result = influxDB.query(new Query(command, database));
return result.getError();
}
/**
* 创建数据库
* @param dbName
*/
public void createDB(String dbName){
influxDB.createDatabase(dbName);
}
/**
* 删除数据库
* @param dbName
*/
public void deleteDB(String dbName){
influxDB.deleteDatabase(dbName);
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getOpenurl() {
return openurl;
}
public void setOpenurl(String openurl) {
this.openurl = openurl;
}
public void setDatabase(String database) {
this.database = database;
}
}
3.存值
public class QuatyServiceImpl{
private InfluxDbUtil influxDB;
public void intoDb() {
influxDB = InfluxDbUtil.setUp();
Map tags = new HashMap<>();
Map fields = new HashMap<>();
tags.put("TAG_NAME",info.getKey());
fields.put("TAG_VALUE",code);
fields.put("TIMAMPEST", df.format(new Date()));
influxDB.insert(tags, fields);
}
}
上面即是这篇文章的内容,希望对各位的学习有所启发,也希望大家多多支持学猫在线(shtml.net)。
本文来源:https://blog.csdn.net/qq_36004521/article/details/80101608
influxdb java api使用_java使用influxDB数据库的详细源码相关推荐
- java捕鱼达人_Java实现捕鱼达人(附源码)
1,游戏原理 swing+多线程+事件监听 swing实现的界面的绘制; 多线程实现产生多种鱼,实现鱼的游动,以及网的移动; 事件监听实现鼠标捕鱼事件的捕获; 2,主要类和方法解释 鱼,背景,网都是图 ...
- java物业管理系统设计_JAVA版物业管理系统论文+设计源码
内容介绍 原文档由会员 从头再来 发布 (内含完整源代码) 1.2万字 28页 [摘要] 物业管理系统是紧随当今时代发展的需要,目的在于实现不同的人员对物业系统的不同的需要,有利于社会的稳定和顺利发展 ...
- 基于 SpringBoot+Vue+Java 的智慧外贸系统(数据库,附源码,教程)
1. 简介 本系统主要包括管理员,买家和商家三个角色组成:主要包括首页.个人中心.买家管理.商家管理.商品分类管理.商品信息管理.商品预订管理.关单信息管理.送仓申请管理.运单信息管理.出口发票管理. ...
- 基于JAVA的农产品销售管理系统【数据库设计、源码、开题报告】
数据库脚本下载地址: https://download.csdn.net/download/itrjxxs_com/86468222 主要使用技术 Struts2+Hibernate+JSP+JS+C ...
- 基于JAVA的智能小区物业管理系统【数据库设计、源码、开题报告】
数据库脚本下载地址: https://download.csdn.net/download/itrjxxs_com/86500766 主要使用技术 Servlet+Jquery+JSP+css+js+ ...
- java计算机毕业设计钢材出入库管理系统(附源码、数据库)
java计算机毕业设计钢材出入库管理系统(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe ...
- Java毕设项目城市公交系统计算机(附源码+系统+数据库+LW)
Java毕设项目城市公交系统计算机(附源码+系统+数据库+LW) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Ecli ...
- JAVA毕业设计江西婺源旅游文化推广系统计算机源码+lw文档+系统+调试部署+数据库
JAVA毕业设计江西婺源旅游文化推广系统计算机源码+lw文档+系统+调试部署+数据库 JAVA毕业设计江西婺源旅游文化推广系统计算机源码+lw文档+系统+调试部署+数据库 本源码技术栈: 项目架构:B ...
- java计算机毕业设计银创科技有限公司人事信息系统源码+数据库+系统+lw文档+部署
java计算机毕业设计银创科技有限公司人事信息系统源码+数据库+系统+lw文档+部署 java计算机毕业设计银创科技有限公司人事信息系统源码+数据库+系统+lw文档+部署 本源码技术栈: 项目架构:B ...
最新文章
- 解决maven3.6版本不兼容idea2017问题
- URL Collection
- 6-day6-函数-1
- 软件设计原则(一)开闭原则(Open-Closed Principle, OCP)
- 上班族如何当老板 五大模式任你选
- 数字金融欺诈行为名词表
- 【精品】Android游戏类源码大集合
- 钣金编程软件Radan无人值守,自动排版功能
- 我对Pass、SaaS、IaaS的理解
- 梨花众创 - 微信支付宝收款二维码合并器
- 类似Jira的十大项目管理软件
- 图像相似的算法有哪些,图像相似的算法是什么
- 不要再重复造轮子了,Hutool 这款开源工具类库贼好使
- linux的dep文件是什么意思,DEP 文件扩展名: 它是什么以及如何打开它?
- Acrobat Reader XI启动后自动关闭的分析
- 企业管理之道:中层管理者,到底该管理什么?
- 谨慎程序员创业的思维障碍
- 【算法】大数乘法问题及其高效算法
- 2019.08.29考试报告
- 浅析深究什么是SOA