ElasticSearch6(三)-- Java API实现简单的增删改查
基于ElasticSearch6.2.4, Java API创建索引、查询、修改、删除,pom依赖和获取es连接 可查看此文章。
package com.xsjt.learn;
import java.io.IOException;
import java.net.InetAddress;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.elasticsearch.action.delete.DeleteResponse;
import org.elasticsearch.action.get.GetResponse;
import org.elasticsearch.action.index.IndexResponse;
import org.elasticsearch.action.update.UpdateResponse;
import org.elasticsearch.client.transport.TransportClient;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.transport.TransportAddress;
import org.elasticsearch.common.xcontent.XContentType;
import org.elasticsearch.transport.client.PreBuiltTransportClient;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import com.alibaba.fastjson.JSONObject; /**
* ClassName:Crud 简单的增删改查 Date: 2018年3月21日 下午12:51:15
*
* @author xbq
* @version
* @since JDK 1.8
*/
public class Crud { public final static String HOST = "192.168.10.58";
// http请求的端口是9200,客户端是9300
public final static int PORT = 9300; private TransportClient client = null; /**
* getConnection:(获取连接).
*
* @author xbq Date:2018年3月21日下午4:03:32
*
* @throws Exception
*/
@SuppressWarnings({ "resource", "unchecked" })
@Before
public void getConnection() throws Exception {
// 设置集群名称
Settings settings = Settings.builder().put("cluster.name", "nmtx-cluster").build();
// 创建client
client = new PreBuiltTransportClient(settings)
.addTransportAddresses(new TransportAddress(InetAddress.getByName(HOST), PORT));
} /**
* closeConnection:(关闭连接).
*
* @author xbq Date:2018年3月21日下午4:03:45
*
*/
@After
public void closeConnection() {
if (client != null) {
client.close();
}
} /**
* testIndex:(创建索引).
*
* @author xbq Date:2018年3月21日下午4:04:16
* @throws IOException
*
*/
@Test
public void testCreateIndex() throws IOException {
JSONObject jsonObject = new JSONObject();
jsonObject.put("orderNo", new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + "001");
jsonObject.put("orderName", "购买元宝");
jsonObject.put("orderTime", new Date());
jsonObject.put("price", 1.5);
jsonObject.put("ip", "192.168.1.111"); IndexResponse response = client.prepareIndex("rxpay", "order").setSource(jsonObject.toString(), XContentType.JSON).get();
System.out.println("索引名称:" + response.getIndex());
System.out.println("类型:" + response.getType());
System.out.println("文档ID:" + response.getId()); // 第一次使用是1
System.out.println("当前实例状态:" + response.status());
} /**
* testQuery:(查询).
* @author xbq
* Date:2018年5月3日下午6:04:22
*/
@Test
public void testQuery() {
try {
GetResponse response = client.prepareGet("rxpay", "order", "6W2QKmMBhrIcTC9dgt7A").execute().actionGet();
System.out.println(response.getSourceAsString());
} catch (Exception e) {
e.printStackTrace();
}
} /**
* testUpdate:(更新).
* @author xbq
* Date:2018年5月3日下午6:07:58
*/
@Test
public void testUpdate() {
JSONObject json = new JSONObject();
json.put("user", "Joe");
json.put("age", "22");
json.put("sex", "男");
json.put("orderTime", "6666666");
UpdateResponse response = client.prepareUpdate("rxpay", "order", "6W2QKmMBhrIcTC9dgt7A").setDoc(json.toJSONString(), XContentType.JSON).get();
System.out.println("索引名称:" + response.getIndex());
System.out.println("类型:" + response.getType());
System.out.println("文档ID:" + response.getId());
System.out.println("当前实例状态:" + response.status());
} /**
* testDelete:(删除).
* @author xbq
* Date:2018年5月4日下午5:44:32
*/
@Test
public void testDelete() {
DeleteResponse response = client.prepareDelete("rxpay", "order", "6W2QKmMBhrIcTC9dgt7A").get();
System.out.println("索引名称:" + response.getIndex());
System.out.println("类型:" + response.getType());
System.out.println("文档ID:" + response.getId());
System.out.println("当前实例状态:" + response.status());
} }
ElasticSearch6(三)-- Java API实现简单的增删改查的更多相关文章
- Neo4j学习笔记(1)——使用Java API实现简单的增删改查
阅读目录 项目的创建及配置 使用嵌入式数据库 创建节点和关系 查询及更新 删除关系和节点 完整代码 参考资料 回到顶部 项目的创建及配置 因为Neo4j依赖的jar包比较多,所以推荐使用Maven来管 ...
- Java API实现Hadoop文件系统增删改查
Java API实现Hadoop文件系统增删改查 Hadoop文件系统可以通过shell命令hadoop fs -xx进行操作,同时也提供了Java编程接口 maven配置 <project x ...
- ZooKeeper学习之路 (五)ZooKeeper API的简单使用 增删改查
zookeeper文件系统的增删改查 public class ZKDemo1 { private static final String CONNECT_STRING = "hadoop1 ...
- salesforce 零基础学习(五十一)使用 Salesforce.com SOAP API 实现用户登录以及简单的增删改查(JAVA访问salesforce)
此篇请参看:https://resources.docs.salesforce.com/202/latest/en-us/sfdc/pdf/salesforce_developer_environme ...
- Java通过JDBC进行简单的增删改查(以MySQL为例)
Java通过JDBC进行简单的增删改查(以MySQL为例) 目录: 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JD ...
- Java web 简单的增删改查程序(超详细)
就是简单的对数据进行增删改查.代码如下: 1.bean层:用来封装属性及其get set方法 toString方法,有参构造方法,无参构造方法等. public class Bean { privat ...
- 通过JDBC进行简单的增删改查
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- 初试KONCKOUT+WEBAPI简单实现增删改查
初试KONCKOUT+WEBAPI简单实现增删改查 前言 konckout.js本人也是刚刚接触,也是初学,本文的目的是使用ko和asp.net mvc4 webapi来实现一个简单增删改查操作.Kn ...
- 通过JDBC进行简单的增删改查(以MySQL为例) 目录
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
随机推荐
- python:爬虫入门
直接上代码吧: 一.爬取某外卖平台的指定商家菜品信息 from urllib import request import json import random url = "https:// ...
- 画时序图工具TimingDesigner 9.2 安装指导
画时序图工具TimingDesigner 9.2 安装指导 先上文件下载链接:http://bbs.eetop.cn/viewthread.php?tid=250446&;highlight= ...
- Android 编程下 WebView 加载一个网页如何得到网页的 Cookie 值
http://www.cnblogs.com/sunzn/archive/2013/04/03/2998113.html mWebView.setWebViewClient(new MyWebView ...
- 隐藏控件--HiddenField控件
HiddenField控件百度查的结果(帮助大家对比理解): HiddenField控件顾名思义就是隐藏输入框的服务器控件,它能让你保存那些不需要显示在页面上的且对安全性要求不高的数据.也许这个时候应 ...
- OS面试题(转载)
转载自:http://placement.freshersworld.com/power-preparation/technical-interview-preparation/os-intervie ...
- python 获取前一天或前N天的日期
简单实现 import datetime # 获取前1天或N天的日期,beforeOfDay=1:前1天:beforeOfDay=N:前N天 def getdate(self,beforeOfDay) ...
- 最新整合maven+SSM+Tomcat 实现注册登录
mybatis学习 http://www.mybatis.org/mybatis-3/zh/index.html Spring学习:http://blog.csdn.net/king1425/arti ...
- 学习下知然网友写的taskqueue
博主在他的博客里对taskqueue的各种使用情况和使用方法都介绍的很清楚:http://www.cnblogs.com/zhiranok/archive/2013/01/14/task_queue. ...
- MySQL数据切分的相关概念和原理详解
对于数据切分,我们可能还不是很熟悉,但是它对于MySQL数据库来说也是相当重要的一门技术,本文我们就详细介绍一下MySQL数据库的数据切分的相关知识,接下来就让我们一起来了解一下这部分内容. 什么是数 ...
- 记一次数据库参数compatible降级[转]
转:http://dbzone.iteye.com/blog/1042455 众所周知,Oracle参数compatible 主要用于启用Oracle针对某一版本的新特性.但此参数设置时,只能往上调, ...