我可以GET http://localhost:9200/_all/_search?q=query为查询字符串搜索所有索引。然而,我找不到一种方法来做到这一点,使用弹性数据搜索的ElasticsearchOperations
或ElasticsearchRestTemplate
。
编辑:我已经试过了,但是多重搜索不能接受类的列表。
elasticsearchOperations.multiSearch(
List.of(queryStringQuery(queryString)),
List.of(EntityOne.class, EntityTwo.class),
IndexCoordinates.of("entityone", "entitytwo")
);
如果你的索引包含不同的类型/实体,你可以使用我在这篇博文中描述的方法:
你使用一个实现Map<String, Object>
的类,它基本上是某种JSON表示,然后在多个索引上搜索后,你可以根据它们在索引中找到的索引将这些返回的对象映射到特殊的类。
从链接的帖子中获取详细信息和代码。