大牛们好:菜鸟一个,项目上需要查询elasticsearch里的记录。目前磕磕绊绊把数据给查出来了,但是没办法查询出记录的总数。就是没办法获取相当于sql里面select count(*) from tableName的结果。因为这影响着前端页面的分页。所以很关键。es原来的分页是 from size。这是从某一条记录开始查,查size条记录。但是前端页面上需要一个共{total}页的,否侧下一页的按钮点不了。也就不能执行es的分页查询。请大牛们介绍一个方法。谢谢!!!
result.hits.hits.total 总记录数
这个可以,但是有一个弊端,当查询数据为0的时候会报错。numHits 必须大于0
应该已经封装好了这种通用的方法,你问问同事是哪个接口传什么参数.
然而并没有
@lukely: 那就自己写一个方法被,分页的方法也不难.
遇到了相同的需求插一下, 我目前想到的是scroll查询出一个滚动对象生成所有数据 但是很慢 在想办法在查询这方面做一个更人性化的接口
TotalHits totalHits = searchResponse.getHits().getTotalHits();
long total =totalHits.value;