0

次の Java コードを使用して、elasticsearch 7.3 にクエリを実行し、1 つのドキュメントを取得しています。スコアが最も高い 1 つのドキュメントのみに設定しました。それは正常に機能しており、ドキュメントを完全に返しています。

  @Autowired
    RestHighLevelClient client;

    @RequestMapping(value = "/search", method = RequestMethod.GET)
    public @ResponseBody
    String getItem(@RequestParam("string") String string) throws IOException {


        QueryBuilder matchQueryBuilder = QueryBuilders.simpleQueryStringQuery(string);
        SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
        sourceBuilder.query(matchQueryBuilder);
        sourceBuilder.from(0);
        sourceBuilder.size(1);
        sourceBuilder.timeout(new TimeValue(60, TimeUnit.SECONDS));

        SearchRequest searchRequest = new SearchRequest("nutrients");
        searchRequest.source(sourceBuilder);

        SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);

        return searchResponse.toString();
    }

応答は次のとおりです。Java コードを使用して値にアクセスし、Calories , Fat , Protein , Carbohydrateother の値を無視しますNutrientString caloriesVar=153 kcal他の3つの変数と同様に、4つの変数の値が必要です。

[検索結果[1]

4

0 に答える 0