在 java 中构建 kibana 查询以从 elasticsearch 中获取记录

building kibana query in java to fetch records from elasticsearch

正在通过 java 代码从 elasticsearch 获取记录,我能够使用 elasticsearch _id 获取记录。为此,我使用下面的 java 代码。

    SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
    MatchQueryBuilder matchQueryBuilder = new MatchQueryBuilder("_id", id); 
    searchSourceBuilder.query(matchQueryBuilder); 
    searchRequest.source(searchSourceBuilder);

我在 Kibana 中使用以下查询从 elasticsearch 中获取记录,

GET /_search
{
    "query": {
        "query_string" : {
            "default_field" : "*",
            "query" : "M*"
        }
    }
}

现在,我想在 java 中构建此查询,我不确定如何在 java 中构建此查询。

你可以这样做:

SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
QueryStringQueryBuilder qsQueryBuilder = new QueryStringQueryBuilder("M*"); 
qsQueryBuilder.defaultField("*");
searchSourceBuilder.query(qsQueryBuilder); 
searchRequest.source(searchSourceBuilder);