我正在使用Elasticsearch Repository和Java High Level Rest Client与我的Elasticsearch连接。
现在,我设法编写了一个复杂的查询,该查询使用嵌套的,应该和必须的关键字从弹性搜索中获取某些数据。但是,由于我使用的是@Query注释,因此我无法在其中编写_source列以仅获取选定的属性,而不是所有属性。
我有
@Query(//a very big query)
但是根据文档,语法为:
public interface BookRepository extends ElasticsearchRepository<Book,String> {
@Query("{"bool" : {"must" : {"field" : {"name" : "?0"}}}}")
Page<Book> findByName(String name);
}
现在,我应该在哪里添加“ _source”以仅获取选定的列。
另一种解决方法是在另一个Java服务上执行此逻辑。
让我知道是否有解决方案。