对于索引的操作是基于***IndexRequest来进行操作的。例如:CreateIndexRequest、DeleteIndexRequest、GetIndexRequest

常见操作中还有校验索引是否存在:exists

创建连接请求:

  

    private RestHighLevelClient client;

    //创建连接
public ElasticsearchController() {
RestHighLevelClient restHighLevelClient = new RestHighLevelClient(
RestClient.builder(
new HttpHost("localhost" , 9200 , "http")
)
); this.client = restHighLevelClient;
}

创建索引:

    public String createIndex(){

        //create es index
CreateIndexRequest requestUser = new CreateIndexRequest("usertestinfo");
CreateIndexResponse createIndexResponse = null;
try {
createIndexResponse = this.client.indices().create(requestUser, RequestOptions.DEFAULT);
} catch (IOException e) {
e.printStackTrace();
} //get es index create result is true or false
boolean acknowledged = false;
try {
acknowledged = createIndexResponse.isAcknowledged();
} catch (Exception e) {
e.printStackTrace();
}
return "Localhost Elasticsearch Create Index is1 : " + acknowledged;
}

查找索引:

    public String findIndex(){

        GetIndexRequest request = new GetIndexRequest("user");
HashMap<String, Object> result = new HashMap<>();
try {
GetIndexResponse getIndexResponse = this.client.indices().get(request, RequestOptions.DEFAULT);
Map<String, Settings> settings = getIndexResponse.getSettings(); System.out.println("index settings is :" + settings.toString());
} catch (IOException e) {
e.printStackTrace();
} return "find es index complete";
}

删除索引:

    public String deleteIndex(){
try {
DeleteIndexRequest usertestinfo = new DeleteIndexRequest("user");
AcknowledgedResponse delete = this.client.indices().delete(usertestinfo, RequestOptions.DEFAULT);
System.out.println("delete index result is : " + delete.isAcknowledged());
} catch (IOException e) {
e.printStackTrace();
} return "delete es index complete";
}

检验索引是否存在:

    //检验某条索引是否存在
public String checkIndexIsExists(){ GetIndexRequest request = new GetIndexRequest("user");
boolean exists = false;
try {
exists = this.client.indices().exists(request , RequestOptions.DEFAULT);
} catch (IOException e) {
e.printStackTrace();
} return "exists es index complete , result is :" + exists;
}

elasticsearch RestHighLevelClient 关于index的常用操作的更多相关文章

  1. Elasticsearch本地环境安装和常用操作

    本篇文章首发于我的头条号Elasticsearch本地环境安装和常用操作,欢迎关注我的头条号和微信公众号"大数据技术和人工智能"(微信搜索bigdata_ai_tech)获取更多干 ...

  2. ElasticSearch之映射常用操作

    本文案例操作,建议先阅读我之前的文章<ElasticSearch之安装及基本操作API> Mapping (映射)类似关系型数据库中的表的结构定义.我们将数据以 JSON 格式存入到 El ...

  3. Elasticsearch(ES)API 增删查改常用操作

    常用操作 查询所有数据 POST http://192.168.97.173:27009/logstash_test_2018/doc/_search { "query": { & ...

  4. elasticsearch RestHighLevelClient 使用方法及封装工具

    目录 EsClientRHL 更新日志 开发原因: 使用前你应该具有哪些技能 工具功能范围介绍 工具源码结构介绍 开始使用 未来规划 git地址:https://gitee.com/zxporz/ES ...

  5. Elasticsearch rest-high-level-client 基本操作

    Elasticsearch rest-high-level-client 基本操作 本篇主要讲解一下 rest-high-level-client 去操作 Elasticsearch , 虽然这个客户 ...

  6. mysql常用操作语句

    mysql常用操作语句 1.mysql -u root -p   2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...

  7. Oracle常用操作——创建表空间、临时表空间、创建表分区、创建索引、锁表处理

    摘要:Oracle数据库的库表常用操作:创建与添加表空间.临时表空间.创建表分区.创建索引.锁表处理 1.表空间 ■  详细查看表空间使用状况,包括总大小,使用空间,使用率,剩余空间 --详细查看表空 ...

  8. Python 基礎 - 字符串常用操作

    字符串常用操作 今天就介紹一下常用的字符串操作,都是以 Python3撰寫的 首字母變大寫 #!/usr/bin/env python3 # -*- coding:utf-8 -*- name = & ...

  9. select元素javascript常用操作 转

    /*------------------------------------------------------ *作者:xieyu @ 2007-08-14 *语言:JavaScript *说明:s ...

  10. R语言Data Frame数据框常用操作

    Data Frame一般被翻译为数据框,感觉就像是R中的表,由行和列组成,与Matrix不同的是,每个列可以是不同的数据类型,而Matrix是必须相同的. Data Frame每一列有列名,每一行也可 ...

随机推荐

  1. mysql 表的创建,修改,删除

    查看数据库所有表 show tables 创建 create table 表名 ( 列名 类型 约束条件 ... ) 类型有整形: tinyint(1B) ,smallint(2B),mediumin ...

  2. Linux 安装配置Anaconda

    下载地址 https://www.anaconda.com/download/success 选择系统版本,复制链接 wget https://repo.anaconda.com/archive/An ...

  3. nginx配置2个不同端口的应用

    如何配置nginx,在同一台服务器上,部署2个不同端口的web应用? 1,利用Django框架搭建的web应用,默认端口是8000: 2,利用Flask框架搭建的web应用,默认端口是5000: 第一 ...

  4. 用Docker Swarm实现容器服务高可用

    背景与技术选择 根据我之前的几篇「Django 系列」文章,后端架构中我使用了 Django + Celery + RabbitMQ 三个框架/服务.现在有几个问题: 如何用容器快速部署这三个应用? ...

  5. 为什么不建议通过Executors构建线程池

    Executors类看起来功能还是比较强大的,又用到了工厂模式.又有比较强的扩展性,重要的是用起来还比较方便,如: ExecutorService executor = Executors.newFi ...

  6. 修显示器led屏幕能亮但是显示异常

    用电吹风热风大风   对着显示器的  ' led 区域 '  吹十分钟 吹显示器线插口 电源线 插口 机箱    断电吹  // 温度挺高  还得吹显卡接口 线也要换新的 插口需要用线的接口 打磨金属 ...

  7. H5 ios端微信浏览器下-底部工具固定方法

    在外层配置css position: fixed; width: 100%; top: 0px; bottom: 0px; overflow: auto; 结束

  8. oracle的order by 中文排序原理

    近期发现oracle的order by中文排序并不是完全按照拼音排序的 经过测试发现oracle的order by中文排序是按照中文的ASCII码排序的 查询字符ASCII码 select ascii ...

  9. fiddler抓包常用辅助工具

    一.过滤器 1.hosts: 只展示内网或外网的hosts,internet(外网),Intranet(内网) 展示下面的hosts/隐藏下面的hosts/:选择后填写需要设置的hosts(地址前面的 ...

  10. CSS横向滚动

    Flex版本 .super { display: flex; width: 100%; overflow-x: scroll; white-space: nowrap; } .sub { width: ...