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

ElasticSearch之RestClient笔记

1. ElasticSearch

1.1 倒排索引 

 

1.2 ElasticSearch和Mysql对比 

 1.3 RestClient操作

导入依赖

        <dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId><version>7.15.0</version></dependency>

并设置 

<elasticsearch.version>7.15.0</elasticsearch.version>

添加ElasticSearch配置

@Configuration
public class ElasticSearchConfig {@Beanpublic RestHighLevelClient restHighLevelClient(){RestHighLevelClient client=new RestHighLevelClient(RestClient.builder(new HttpHost("127.0.0.1",9200,"http")));return client;}
}

索引的创建,判断是否存在,删除

  CreateIndexRequest createIndexRequest=new CreateIndexRequest("test");restHighLevelClient.indices().create(createIndexRequest, RequestOptions.DEFAULT);//判断某个索引库是否存在GetIndexRequest getIndexRequest=new GetIndexRequest("test");boolean exists = restHighLevelClient.indices().exists(getIndexRequest, RequestOptions.DEFAULT);System.out.println(exists);//删除某个索引库DeleteIndexRequest deleteIndexRequest=new DeleteIndexRequest("test");restHighLevelClient.indices().delete(deleteIndexRequest,RequestOptions.DEFAULT);

添加文档

  IndexRequest in = new IndexRequest("test").id("1").source("{\n" +"   \"username\":\"admin\",\n" +"   \"password\":\"admin\"\n" +"}", XContentType.JSON);restHighLevelClient.index(in,RequestOptions.DEFAULT);

查找文档

 GetRequest getRequest=new GetRequest("test","1");GetResponse getResponse = restHighLevelClient.get(getRequest, RequestOptions.DEFAULT);System.out.println(getResponse.getSourceAsString());

更新文档

//全量更新,再次写入id一样的文档,就会删除旧文档,添加新文档IndexRequest in = new IndexRequest("test").id("1").source("{\n" +"   \"username\":\"admin\",\n" +"   \"password\":\"helloworld\"\n" +"}", XContentType.JSON);restHighLevelClient.index(in,RequestOptions.DEFAULT);UpdateRequest updateRequest=new UpdateRequest("test","1");updateRequest.doc("password","hello");restHighLevelClient.update(updateRequest,RequestOptions.DEFAULT);

删除文档

  DeleteRequest deleteRequest=new DeleteRequest("test","1");restHighLevelClient.delete(deleteRequest,RequestOptions.DEFAULT);

批量导入文档

  BulkRequest bulkRequest=new BulkRequest();bulkRequest.add(new IndexRequest("test").id("2").source("{\n" +"   \"username\":\"hello\",\n" +"   \"password\":\"hello\"\n" +"}",XContentType.JSON));bulkRequest.add(new IndexRequest("test").id("3").source("{\n" +"   \"username\":\"world\",\n" +"   \"password\":\"world\"\n" +"}",XContentType.JSON));restHighLevelClient.bulk(bulkRequest,RequestOptions.DEFAULT);

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Python生成器 (Generators in Python)
  • 【二叉树】【DFS】104.二叉树的最大深度
  • golang 图片加水印,字体文件从哪里找
  • 英语打卡分析12
  • LabVIEW与PID在温度测控系统中的应用
  • .NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布
  • LTPI协议的理解——2、LTPI实现的底层架构
  • JS学习之-01
  • Visual Studio 配置DLL
  • 【Java 进阶篇】Redis 缓存优化:提升应用性能的不二选择
  • Android笔记(二十三):Paging3分页加载库结合Compose的实现分层数据源访问
  • 2024年汉字小达人区级样题预测(基于近年真题)和备考建议
  • 如何使用Docker将.Net6项目部署到Linux服务器(三)
  • o2o生活通全开源尊享版+多城市切换+企业付款+交友IM+平台快报
  • C# json 转匿名对象及C#关键字的处理
  • python3.6+scrapy+mysql 爬虫实战
  • 10个确保微服务与容器安全的最佳实践
  • CAP 一致性协议及应用解析
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • HTTP那些事
  • JavaScript设计模式之工厂模式
  • MySQL-事务管理(基础)
  • React组件设计模式(一)
  • unity如何实现一个固定宽度的orthagraphic相机
  • 从零开始在ubuntu上搭建node开发环境
  • 汉诺塔算法
  • 前端面试总结(at, md)
  • 前嗅ForeSpider教程:创建模板
  • 如何设计一个微型分布式架构?
  • 如何在GitHub上创建个人博客
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • 王永庆:技术创新改变教育未来
  • 我的业余项目总结
  • 正则与JS中的正则
  • ## 基础知识
  • #{}和${}的区别是什么 -- java面试
  • #laravel部署安装报错loadFactoriesFrom是undefined method #
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (二十四)Flask之flask-session组件
  • (附源码)计算机毕业设计ssm基于Internet快递柜管理系统
  • (过滤器)Filter和(监听器)listener
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (转)视频码率,帧率和分辨率的联系与区别
  • (转载)虚函数剖析
  • .NET Core 中插件式开发实现
  • .Net Core 中间件与过滤器
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .NET 回调、接口回调、 委托
  • .NET/C# 异常处理:写一个空的 try 块代码,而把重要代码写到 finally 中(Constrained Execution Regions)
  • .net快速开发框架源码分享
  • .Net下C#针对Excel开发控件汇总(ClosedXML,EPPlus,NPOI)
  • :“Failed to access IIS metabase”解决方法