Es 学习记录

java 复制代码
import com.demo1.demo1.util.JsonUtils;

import org.apache.http.HttpHost;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.SearchHits;
import org.elasticsearch.search.builder.SearchSourceBuilder;

import java.io.IOException;

/**
 * @author haiyang.shu
 * @date 2023/6/29 2:07 PM
 */
public class EsDemo {

    public static void main(String[] args) throws IOException {
        // 创建客户端对象
        RestHighLevelClient client = new RestHighLevelClient(
                RestClient.builder(new HttpHost("localhost", 9200)));

        // 创建索引
//        CreateIndexRequest indexRequest = new CreateIndexRequest("order");
//        CreateIndexResponse createIndexResponse = client.indices().create(indexRequest, RequestOptions.DEFAULT);
//
//        System.out.println(createIndexResponse.isAcknowledged());

        SearchRequest request = new SearchRequest();
        request.indices("mp_lepus_test");

        SearchSourceBuilder builder = new SearchSourceBuilder();
        builder.from(0);
        builder.size(10);


        BoolQueryBuilder queryBuilder = new BoolQueryBuilder();
        queryBuilder.must(QueryBuilders.termsQuery("order_no", "121313131","124123121"));


        queryBuilder.must(QueryBuilders.rangeQuery("create_time")
                .gte(1660863600000L)
                .lte(1661382000000L));


        builder.query(queryBuilder);




        request.source(builder);

        SearchResponse searchResponse = client.search(request, RequestOptions.DEFAULT);
        SearchHits hits = searchResponse.getHits();
        SearchHit[] hitsHits = hits.getHits();
        for (SearchHit hit : hitsHits) {
            String sourceAsString = hit.getSourceAsString();
            MpLepusTestBean mpLepusTestBean = JsonUtils.fromJson(sourceAsString, MpLepusTestBean.class);
            System.out.println(1111);
        }
        // 关闭客户端连接
        client.close();
    }
}

RestHighLevelClient

相关推荐
liujing102329292 分钟前
Day04_刷题niuke20250703
java·开发语言·算法
Brookty5 分钟前
【MySQL】JDBC编程
java·数据库·后端·学习·mysql·jdbc
能工智人小辰19 分钟前
二刷 苍穹外卖day10(含bug修改)
java·开发语言
DKPT19 分钟前
Java设计模式之结构型模式(外观模式)介绍与说明
java·开发语言·笔记·学习·设计模式
缘来是庄22 分钟前
设计模式之外观模式
java·设计模式·外观模式
编程小白gogogo41 分钟前
Spring学习笔记
笔记·学习·spring
qq_527887871 小时前
【学习笔记】Python中主函数调用的方式
笔记·学习
知其然亦知其所以然1 小时前
JVM社招面试题:队列和栈是什么?有什么区别?我在面试现场讲了个故事…
java·后端·面试
harmful_sheep1 小时前
Spring 为何需要三级缓存解决循环依赖,而不是二级缓存
java·spring·缓存
星辰大海的精灵1 小时前
如何确保全球数据管道中的跨时区数据完整性和一致性
java·后端·架构