es Elasticsearch 十一 Java api实现 索引管理

news2025/1/25 17:59:39

目录

Java api实现 索引管理

Pom

测试联通

增加索引

打印结果

异步执行

删除索引

查看索引是否存在

关闭索引

开启索引


Java api实现 索引管理

Pom

<dependency>

    <groupId>org.elasticsearch.client</groupId>

    <artifactId>elasticsearch-rest-high-level-client</artifactId>

</dependency>

测试联通

private RestHighLevelClient client;

  

  //链接

  @Test

  void testCreateClient() throws IOException {

    HttpHost host = HttpHost.create("http://localhost:9200");

    RestClientBuilder builder = RestClient.builder(host);

    client = new RestHighLevelClient(builder);

  

    client.close();

  }

增加索引


import org.apache.http.HttpHost;
import
org.elasticsearch.client.RequestOptions;
import
org.elasticsearch.client.RestClient;
import
org.elasticsearch.client.RestClientBuilder;
import
org.elasticsearch.client.RestHighLevelClient;
import
org.elasticsearch.client.indices.CreateIndexRequest;
import
org.junit.jupiter.api.Test;
import
org.springframework.boot.test.context.SpringBootTest;

import
java.io.IOException;
import
java.util.HashMap;
import
java.util.Map;

//高级客户端
@SpringBootTest
public class SpringBootEsApplicationTestsGj {
   
private RestHighLevelClient client = new RestHighLevelClient(RestClient.builder(HttpHost.create("http://localhost:9200")));

   
//链接
   
@Test
   
void testCreateClient() throws IOException {
        HttpHost host = HttpHost.create(
"http://localhost:9200");
       
RestClientBuilder builder = RestClient.builder(host);
       
client = new RestHighLevelClient(builder);

       
client.close();
   
}

   
//创建索引
   
@Test
   
public void testCreateIndex() throws IOException {
        CreateIndexRequest request =
new CreateIndexRequest("books901");
       
Map<String,Object> map = new HashMap<>();
       
map.put("type","text");
       
Map<String,Object> map2 = new HashMap<>();
       
map2.put("type","text");
       
Map<String,Object> mapP = new HashMap<>();
       
mapP.put("name",map);
       
mapP.put("age",map2);
       
Map<String,Object> mapP1 = new HashMap<>();
       
mapP1.put("properties",mapP);
       
request.mapping(mapP1);

       
client.indices().create(request, RequestOptions.DEFAULT);
       
client.close();
   
}
}

设置 mapping

设置 别名

设置 超时时间

设置 主节点超时时间

打印结果



System.out.println( r.isAcknowledged()+" ------ "+ r.isShardsAcknowledged());
 

异步执行

package com.esbase.fintech.ais;

  

import org.apache.http.HttpHost;

import org.elasticsearch.action.ActionListener;

import org.elasticsearch.client.RequestOptions;

import org.elasticsearch.client.RestClient;

import org.elasticsearch.client.RestHighLevelClient;

import org.elasticsearch.client.indices.CreateIndexRequest;

import org.elasticsearch.client.indices.CreateIndexResponse;

import org.junit.jupiter.api.Test;

import org.springframework.boot.test.context.SpringBootTest;

  

import java.io.IOException;

import java.util.HashMap;

import java.util.Map;

  

  //高级客户端

  @SpringBootTest

  public class SpringBootEsApplicationTestsGj {

    private RestHighLevelClient client = new RestHighLevelClient(RestClient.builder(HttpHost.create("http://localhost:9200")));

  

    //创建索引

    @Test

    public void testCreateIndex() throws IOException, InterruptedException {

        CreateIndexRequest request = new CreateIndexRequest("boodsdksasd901dd");

        Map<String,Object> map = new HashMap<>();

        map.put("type","text");

        Map<String,Object> map2 = new HashMap<>();

        map2.put("type","text");

        Map<String,Object> mapP = new HashMap<>();

        mapP.put("name",map);

        mapP.put("age",map2);

        Map<String,Object> mapP1 = new HashMap<>();

        mapP1.put("properties",mapP);

        request.mapping(mapP1);

  

  //        CreateIndexResponse r = client.indices().create(request, RequestOptions.DEFAULT);

//        System.out.println( r.isAcknowledged()+" ------ "+ r.isShardsAcknowledged());

  

        ActionListener<CreateIndexResponse> rs = new ActionListener<CreateIndexResponse>() {

  

            @Override

            public void onResponse(CreateIndexResponse createIndexResponse) {

                System.out.println( createIndexResponse.isAcknowledged()+" ------ "+ createIndexResponse.isShardsAcknowledged());

            }

  

            @Override

            public void onFailure(Exception e) {

                System.out.println("error:"+e);

            }

        };

        client.indices().createAsync(request,RequestOptions.DEFAULT,rs);

        Thread.sleep(1000);

        client.close();

  

    }

}

删除索引

 

查看索引是否存在

 

关闭索引

 

开启索引

ok

持续更新

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/572638.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C嘎嘎~~[谈谈C++的一些优化]

C的一些优化 匿名对象引用引用作形参引用作返回值 编译器优化构造 拷贝构造 ⇒ 构造拷贝构造 拷贝构造 ⇒ 一个拷贝构造 匿名对象 通过以前C语言的学习, 我们知道了有一种 具有临时性的, 没有名字的变量 — — 匿名变量. 那么我们的对象应该也有这个特性 — — 匿名对象 匿名…

如何在 Linux 中创建非登录用户?

在 Linux 系统中&#xff0c;用户账户的管理是一个重要的任务。除了常规的登录用户&#xff0c;有时候我们需要创建一些非登录用户&#xff0c;这些用户通常用于运行服务、执行特定任务或限制访问权限。 本文将详细介绍如何在 Linux 中创建非登录用户&#xff0c;并提供一些相关…

linuxOPS基础_linux系统注意事项

Linux严格区分大小写 Linux 和Windows不同&#xff0c;Linux严格区分大小写的&#xff0c;包括文件名和目录名、命令、命令选项、配置文件设置选项等。 例如&#xff0c;Win7 系统桌面上有文件夹叫做Test&#xff0c;当我们在桌面上再新建一个名为 test 的文件夹时&#xff0c…

Java之旅(四)

Java变量 变量是存储数据值的容器&#xff0c;用于在内存中保存数据。成员变量 作用范围是整个类 类的成员变量的作用范围同类的实例化对象的作用范围相同。当类被实例化的时候&#xff0c;成员变量就会在内存中分配空间&#xff0c;并初始化 实例变量&#xff08;不以 static…

如何在华为OD机试中获得满分?Java实现【基站维修工程师】一文详解!

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: Java华为OD机试真题(2022&2023) 文章目录 1. 题目描述2. 输入描述3. 输出描述4. Java算法源码5. 测试6.解题思路1. 题目描述 小陈是一名

Canvas实现连线动态效果

前言 这段时间一直在研究 Canvas 的动画&#xff0c;本文将带大家基于 Canvas 封装的 ZRender 库&#xff0c;了解ZRender 库中提供的 animate 绘制动画的方法&#xff0c;并且使用 animate 方法实现一个带有箭头流动效果的连线。 效果 ZRender 在介绍 ZRender 的动画之前&a…

java+iClientOpenlayers实现污水排放扩散模拟(湖库污染排放扩散模拟)

软件实现效果 一、应用背景 湖库污染是一个日益严峻的环境问题。随着城市化和工业化的加速发展&#xff0c;越来越多的有害物质被排放入湖库中&#xff0c;导致湖库污染加剧并扩散到周围地区。本文将探讨湖库污染扩散的原因、影响和解决方法。 首先&#xff0c;湖库污染扩散的…

Android之 软件架构发展和封装

一 简介 1.1 软件架构发展趋势是解耦&#xff0c;即分离数据层和视图层&#xff0c;使得数据层专注于业务的数据和逻辑处理。从而提高代码的可读可编辑效率&#xff0c;提高团队协作能力&#xff0c;项目的生产能力&#xff0c;降低后期维护成本。 1.2 Android架构发展MVC -…

Rocksdb相关学习

1 Basic Operations 先介绍一些 RocksDB 的基本操作和基本架构。 1.1 LSM 与 WriteBatch 参考文档5提到RocksDB 是一个快速存储系统&#xff0c;它会充分挖掘 Flash or RAM 硬件的读写特性&#xff0c;支持单个 KV 的读写以及批量读写。RocksDB 自身采用的一些数据结构如 LSM/…

STLINK V2 无法用STM32CubeProgrammer下载程序

这个问题真的挺狗的&#xff0c;先说结论&#xff0c;因为你买的STLINK V2是国产的&#xff0c;而且用的也是国产的芯片&#xff0c;不是ST的STM32F103C8T6&#xff0c;所以STM32CubeProgrammer识别不到芯片的串号&#xff0c;都是奸商为了省钱导致的。 我是去年买的一个STLINK…

数据库作业

数据库teaching中的表结构和表记录。    &#xff08;1&#xff09;学生信息表student    #student表结构      create table if not exists student (      studentno char(11) not null comment学号,      sname char(8) not null comment姓名,   …

【Unity100个实用小技巧】一行代码解决天空盒接缝问题

☀️博客主页&#xff1a;CSDN博客主页&#x1f4a8;本文由 萌萌的小木屋 原创&#xff0c;首发于 CSDN&#x1f4a2;&#x1f525;学习专栏推荐&#xff1a;面试汇总❗️游戏框架专栏推荐&#xff1a;游戏实用框架专栏⛅️点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd;&#…

三位一体,新华三绿洲3.0数据平台聚焦五大提升

如何有效发挥出数据要素的价值&#xff1f;--这已成为行业用户在数字化转型和智能化升级中的一道必答题。 从2020年《关于构建更加完善的要素市场化配置体制机制的意见》首次明确“数据”成为五大生产要素之一&#xff0c;到去年底《中共中央、国务院关于构建数据基础制度更好…

javaExcel的导出(简单方法,不用代码写表头)

目录 一.java代码 1.controller层(/exportTradeCreditData) 2.service代码 3.将设计好的excel模板放到指定位置 4.ExcelWriter.write()方法 二.前端Vue代码 1.接口 2.代码 三.Excel模板 1.将对应的字段也就是list中的key放到你想放在的位置&#xff08;${contract.CIT…

路面积水监测传感器有哪些?路面积水传感器的作用是什么?

路面积水是指在降雨或其他因素下&#xff0c;道路表面无法及时排水而形成的水体堆积现象。路面积水不仅对交通安全造成威胁&#xff0c;还可能对道路结构和交通设施造成损害&#xff0c;严重影响了城市生命线的安全运行。近年来&#xff0c;随着物联网传感技术的兴起&#xff0…

Spring高手之路——深入理解注解驱动配置与XML配置的融合与区别

文章目录 1. 配置类的编写与Bean的注册2. 注解驱动IOC的依赖注入与XML依赖注入对比3. 组件注册4. 组件扫描4.1 使用ComponentScan的组件扫描4.2 xml中启用component-scan组件扫描4.3 不使用ComponentScan的组件扫描 5. 组件注册的其他注解6. 将注解驱动的配置与XML驱动的配置结…

Windows下搭建paddlenlp 语义检索系统

windos下搭建paddlenlp 语义检索系统 之前搭建paddleocr的时候&#xff0c;创建了paddle的虚拟环境&#xff0c;顺便也装了paddlenlp的库&#xff0c;就想着直接用这个&#xff0c;然后语义检索模型本身没有问题了&#xff0c;可以正常推理了。但在搭建pipline的时候出现问题&…

工程测量--学习笔记

1、测量学的概念 测量学是研究地球的形状、大小以及地表&#xff08;包括地面上各种物体&#xff09;的几何形状及其空间位置的科学。 2、工程测量的概念 工程测量是运用测量学的基本原理和方法为各类工程服务。 3、测量工作分类 测量工作包括测定和测设两部分。 测定是指使用…

算法|2.异或运算

算法|2.异或运算 1.不用额外变量交换两个数的值 题意&#xff1a;不用额外变量交换&#xff08;数组中&#xff09;两个数的值 解题思路&#xff1a; 使用异或运算的性质 代码及运行结果&#xff1a; 2.找到唯一出现奇数次的数字 题意&#xff1a;一个数组中有一种数出现了…

这才是网络安全最系统的学习路线(建议收藏)

01 什么是网络安全 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 无论网络、Web、移动、桌面、云等哪个领域&#xff0c;都有攻与防两面…