spring data elasticsearch 返回数据封装进Page对象后按相关度排序问题,急急急!!!


最近一周在用spring data elasticsearch做全文检索,但是出了一个很奇怪的问题。同样的语句,我在spring data Elasticsearch中查询的顺序和我在Elasticsearch-heaf插件中查询结果的顺序不一致。因为这个功能是关于商品检索的,需要根据相关度来排序显示,今天在网上查了一天也没有解决,希望懂的大哥帮小弟看看是啥问题,万分感谢!真的很急!下面附上代码:
---------------------------------------------------------------------Controller-------------------------------------------------------------------------------------
/*
      产品的查询及分页; @PageableDefault会自动的根据request的参数来组装该pageable对象();
      支持的request参数有page(默认为第0页)、size(默认为10)、sort(排序相关的信息);如page=1&&size=6&&sort=id,desc
   */
    @RequestMapping("/getContractProxySupplyList")
    public ServiceResponse<PageResult<ContractProxySupply>> getContractProxySupplyList( String goodsName, String goodsBrand,String goodsAttr,@PageableDefault Pageable pageable){
        return contractProxySupplyService.getContractProxySupplyList(goodsName,goodsBrand,goodsAttr,pageable);
    }
-------------------------------------------------------------------------DAO-----------------------------------------------------------------------------------------
 @Query("{\"query\":{\"bool\":{\"should\":[{\"match\":{\"itemList.goodsName\":{\"query\":\"牙膏\",\"boost\":1}}},{\"match\":{\"itemList.goodsBrand\":{\"query\":\"日化\",\"boost\":1}}},{\"match\":{\"itemList.goodsAttr\":{\"query\":\"美白效果好\",\"boost\":1}}}]}}}")
    List<ContractProxySupply> getContractProxySupplyList1(String goodsName,String goodsBrand,String goodsAttr, Pageable pageable);

service就是中转了一下,直接去调DAO了,就不上代码了。

1 个解决方案

#1



这是在ES插件查询结果截图和在IDEA中debug的截图
智能推荐

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2019 ITdaan.com 粤ICP备14056181号  

赞助商广告