有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在elasticsearch中获取字段的所有值

我有java示例代码,可以插入2个基本文档

@Container
private final ElasticsearchContainer elasticContainer = DataApiElasticSearchContainer.getInstance();

HttpEntity<String> entity_post = new HttpEntity<>("{\"man_name\": \"Hello world!\"}", headers);
HttpEntity<String> entity_post2 = new HttpEntity<>("{\"man_name\": \"Hello world666!\"}", headers);
HttpEntity<String> entity_get = new HttpEntity<>("{\n" +
        "  \"aggs\": {\n" +
        "    \"genres\": {\n" +
        "      \"terms\": { \"field\": \"man_name\" } \n" +
        "    }\n" +
        "  }\n" +
        "}" +
        "}", headers);

ResponseEntity<String> response_post =
        restTemplate.exchange("http://" + elasticContainer.getHttpHostAddress() + "/bookindex/man_name",
                HttpMethod.POST, entity_post,String.class);
assertThat(response_post.getStatusCode()).isEqualTo(HttpStatus.CREATED);
ResponseEntity<String> response_post2 =
        restTemplate.exchange("http://" + elasticContainer.getHttpHostAddress() + "/bookindex/man_name",
                HttpMethod.POST, entity_post2,String.class);
assertThat(response_post2.getStatusCode()).isEqualTo(HttpStatus.CREATED);
ResponseEntity<String> response =
        restTemplate.exchange("http://" + elasticContainer.getHttpHostAddress() + "/bookindex/_search",
                HttpMethod.GET, entity_get, String.class);
System.out.println(response.getBody());

但我的身体有这个输出

{"took":36,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0},"hits":{"total":{"value":0,"relation":"eq"},"max_score":null,"hits":[]}}

我想要这样的人名值列表:[“你好,世界!”,“你好,世界666!”]


共 (0) 个答案