Elasticsearch入门Demo(二)
1.向索引库添加json字符串
/**
* 添加索引:传入json字符串
*/
@Test
public void addIndex2()
{
String jsonStr = "{" + "\"userName\":\"张三\"," + "\"sendDate\":\"2017-11-30\"," + "\"msg\":\"你好李四\"" + "}";
IndexResponse response = client.prepareIndex("weixin", "tweet").setSource(jsonStr, XContentType.JSON).get();
logger.info("json索引名称:" + response.getIndex() + "\njson类型:" + response.getType() + "\njson文档ID:"
+ response.getId() + "\n当前实例json状态:" + response.status());
}
2.向索引库添加一个Map集合
/**
* 创建索引-传入Map对象
*/
@Test
public void addIndex3()
{
Map<String, Object> map = new HashMap<String, Object>();
map.put("userName", "张三");
map.put("sendDate", new Date());
map.put("msg", "你好李四");
IndexResponse response = client.prepareIndex("momo", "tweet").setSource(map).get();
logger.info("map索引名称:" + response.getIndex() + "\n map类型:" + response.getType() + "\n map文档ID:"
+ response.getId() + "\n当前实例map状态:" + response.status());
}
3.向索引库添加JsonObject
/**
* 传递json对象
*/
@Test
public void addIndex4()
{
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("userName", "张三");
jsonObject.addProperty("sendDate", "2017-11-23");
jsonObject.addProperty("msg", "你好李四");
IndexResponse response = client.prepareIndex("qq", "tweet").setSource(jsonObject, XContentType.JSON).get();
logger.info("jsonObject索引名称:" + response.getIndex() + "\n jsonObject类型:" + response.getType()
+ "\n jsonObject文档ID:" + response.getId() + "\n当前实例jsonObject状态:" + response.status());
}
4.从索引库获取数据
/**
* 从索引库获取数据
*/
@Test
public void getData1()
{
GetResponse getResponse = client.prepareGet("msg", "tweet", "1").get();
logger.info("索引库的数据:" + getResponse.getSourceAsString());
}
5.更新索引库数据
/**
* 更新索引库数据
*/
@Test
public void updateData()
{
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("userName", "王五");
jsonObject.addProperty("sendDate", "2008-08-08");
jsonObject.addProperty("msg", "你好,张三,好久不见");
UpdateResponse updateResponse = client.prepareUpdate("msg", "tweet", "1")
.setDoc(jsonObject.toString(), XContentType.JSON).get();
logger.info("updateResponse索引名称:" + updateResponse.getIndex() + "\n updateResponse类型:"
+ updateResponse.getType() + "\n updateResponse文档ID:" + updateResponse.getId()
+ "\n当前实例updateResponse状态:" + updateResponse.status());
}
6.删除索引库数据
/**
* 根据索引名称,类别,文档ID 删除索引库的数据
*/
@Test
public void deleteData()
{
DeleteResponse deleteResponse = client.prepareDelete("msg", "tweet", "1").get();
logger.info("deleteResponse索引名称:" + deleteResponse.getIndex() + "\n deleteResponse类型:"
+ deleteResponse.getType() + "\n deleteResponse文档ID:" + deleteResponse.getId()
+ "\n当前实例deleteResponse状态:" + deleteResponse.status());
}
Elasticsearch入门Demo(二)相关推荐
- python elasticsearch 入门教程(二) ---全文搜索
python elasticsearch 入门教程(二) ---全文搜索 截止目前的搜索相对都很简单:单个姓名,通过年龄过滤.现在尝试下稍微高级点儿的全文搜索--一项 传统数据库确实很难搞定的任务. ...
- Elasticsearch入门(二) API
Elasticsearch入门(二) API VSCode部署 RESTful API 索引库管理 列举索引 创建job_idx索引库 查看索引 删除索引 数据管理 数据插入 数据更新 删除数据 Bu ...
- Elasticsearch入门Demo(一)
1.创建一个Maven工程,在pom.xml中添加如下代码: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns ...
- Elasticsearch入门(包含整合SpringBoot和简单实战demo)
ElasticSearch 前言:本文的ElasticSearch版本是7.6.x 一.ElasticSearch概述 1.Lucene 在学习ElasticSearch之前,先简单了解一下Lucen ...
- ElasticSearch插件demo
环境: 操作系统:win7 elasticsearch版本:5.4.4 java:1.8 参考文章: 1.Elasticsearch权威指南(中文版) 2.Elasticsearch笔记五之java操 ...
- 【ELK】ElasticSearch插件demo
环境: 操作系统:win7 elasticsearch版本:5.4.4 java:1.8 参考文章: 1.Elasticsearch权威指南(中文版) 2.Elasticsearch笔记五之java操 ...
- 大白话ElasticSearch入门概念,看不懂找我!
点击上方蓝色"胖滚猪学编程",选择"设为星标" 跟着胖滚猪学编程!好玩!有趣! 这是胖滚猪ES系列博文第三篇,大白话ElasticSearch入门概念. 阅读本 ...
- SpringBoot入门(二)——起步依赖
本文来自网易云社区 在前一篇我们通过简单几步操作就生成了一个可以直接运行的Web程序,这是因为SpringBoot代替我们做了许多工作,概括来讲可以分为起步依赖和自动配置.这一篇先来看看起步依赖. 项 ...
- ElasticSearch入门 第一篇:Windows下安装ElasticSearch
这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...
最新文章
- 让你的数据离CPU更近一些
- “阿一web标准学堂”选修课:EditPlus高级使用技巧(附视频、课件、代码下载)...
- tinyxml 内存泄露_有关TinyXML使用的简单总结
- Django2中使用xadmin
- MySQL不使用逗号_Mysql 不能使用逗号的情况
- Nature长文:打破AI黑盒的“持久战”
- c语言的报告一,C语言实验报告(一).doc
- 诗与远方:无题(十三)
- ios 边录音边放_ios中同时录音和播放
- C语言基础程序题及答案(适合学完C基础的人练练手)
- c 语言鼠标钩子,线程钩子(鼠标钩子) | C/C++程序员之家
- [AndroidO] [RK3399] -- CH341驱动移植
- 微信app支付 服务器接口,iOS微信支付——APP调用微信支付接口
- 学习打印机,了解打印命令
- 华为云服务器配置过程
- 储备物资管理局计算机,国考报名税务过审居首 储备物资管理局最抢手
- 【批处理DOS-CMD命令-汇总和小结】-磁盘管理和修复、磁盘和分区属性的管理、设置隐藏分区卷(convert、diskpart、chkdsk)
- Edge浏览器上方不展示收藏夹的内容
- 使用 Scrapy + Selenium 爬取动态渲染的页面
- taohui.org.cn建站历程
热门文章
- k8s使用kube-router网络插件并监控流量状态
- Mysql是时候学习一个存储过程了
- 【转载】云计算的三种服务模式:IaaS,PaaS和SaaS
- 微软批量授权版WINDOWS 10资料(截至到2015年11月,此处无下载地址)
- 项目总结---- imageLoder 的2个Bug解决方法、1.9.4如何选择性删除disk缓存和其它一些错误。...
- Python网络编程(4)——异步编程select epoll
- linux系统下添加新硬盘的方法详解
- 千万不要把 bool 当成函数参数
- php ImageMagick扩展
- iSCSI软件套件 介绍