Spring Elasticsearch:为查询返回嵌套文档

时间:2021-05-15 09:52:59

标签: spring-data-elasticsearch

我正在使用 Spring Elasticsearch。这是我的 Java 类:

@Document(indexName = "shopindex")
public class Shop implements Serializable {


  @Field(type = FieldType.Text, name = "name")
  private String name;

  @Field(type = FieldType.Text, name = "address")
  private String address;

  @Field(type = FieldType.Nested, includeInParent = true)
  private ArrayList<Listing> listings;

}

这是我的列表类:

public class Listing implements Serializable{
   @Field(type = FieldType.Text, name = "ListingName")
   private String name;

   @Field(type = FieldType.Text, name = "ListingDescription")
   private String description;
}

我想搜索 shopindex 并返回在其名称和描述字段中包含查询字符串的 Listing 对象列表。我已经尝试使用此代码进行搜索:

  NativeSearchQuery searchQuery = new NativeSearchQueryBuilder()
          .withQuery(QueryBuilders.multiMatchQuery(query, "listings"))              
          .build();
  Iterable<Shop> itr = searchRepository.search(searchQuery);

我想要列出 Iterable 而不是 Shop Iterable。我该怎么做?

0 个答案:

没有答案