2017-04-12 110 views
1

据我所知,没有办法提供一个facet.json来使用spring-data-solr。spring-data-solr有没有办法提供json.facet参数?

我想什么是这样的:

public interface FooRepository extends SolrCrudRepository<Foo, Long> { 
    @Query(value = "name:?0") 
    @Facet(json="{More complex facet JSON here}") 
    FacetPage<Foo> findByNameAndFacet(String name, Pageable page); 
} 

即使是这样,我不认为回来的面会很好地融入了FacetPage对象。

在已有spring-data-solr的应用程序中处理此问题的最佳方法是什么?我目前的选择是从我的spring-data-solr存储库中独立使用SolrClient。

PS - 之所以我有兴趣做json.facet是两个聚合函数avg和现场/与domain是排除类似http://yonik.com/multi-select-faceting/

回答

2

标签如果你能与现场管理方面,以排除标记范围过滤器,你可以这样做:

public interface FooRepository extends SolrCrudRepository<Foo, Long> { @Query(value = "name:?0", filters = { "{!tag=COLOR}color:?1" }) @Facet(fields = { "{!ex=COLOR key=colors}color" }) FacetPage<Foo> findByNameAndColorFacet(String name, String color, Pageable page); }

相关问题