栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

spring boot 查询ES使用restHighLevelClient并通过DSL语法查询数据

spring boot 查询ES使用restHighLevelClient并通过DSL语法查询数据

java程序通过DSL语法查询ES
在日常使用java语言对es进行操作时,除了直接使用spring boot集成es的api,有事可能还需要使用原生的DSL语法,通过参数的形式去构建查询。
在此记录一下在开发过程中,使用DSL的json字符串并通过restHighLevelClient去构建http请求动态查询es的使用方法。
String queryInfo="{
    "query":{
        "match":{
            "member_id":"17e42e9d73774c0ba5281683861bf1ac"
        }
    },
    "size":1,
    "aggregations":{
        "group_by_field":{
            "terms":{
                "field":"stat_date",
                "size":1,
                "order":[
                    {
                        "_key":"desc"
                    }
                ]
            }
        }
    }
}";
Request request = new Request("GET","/index/_search");
request.setJsonEntity(queryInfo);
Response response = restHighLevelClient.getLowLevelClient().performRequest(request);
String responseStr = EntityUtils.toString(response.getEntity());
System.out.println(responseStr);

若封装为查询方法,则可将queryInfo作为方法的参数,达到动态查询ES的目的。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/450105.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号