Java JaVers能否返回经过筛选的条目数?

Java JaVers能否返回经过筛选的条目数?,java,javers,Java,Javers,贾维斯是一个伟大的图书馆。不过,我想知道它是否提供了一种确定JQL查询将返回的结果数量的方法 这将对我们的用例非常有帮助,这将是: 1) 使用JaVers的skip()和limit()函数只返回一页请求的数据 2) 确定并返回与分页相关的其他数据,例如返回的页面是否是最后一个页面以及系统中存在多少页面(这取决于用户指定的页面大小…以及系统中可能出现的最大结果数-我不确定如何最好地检索) 我意识到,我们可以简单地将JaVers的findChanges方法返回的所有结果加载到内存中,以获得完整计数。

贾维斯是一个伟大的图书馆。不过,我想知道它是否提供了一种确定JQL查询将返回的结果数量的方法

这将对我们的用例非常有帮助,这将是:

1) 使用JaVers的skip()和limit()函数只返回一页请求的数据

2) 确定并返回与分页相关的其他数据,例如返回的页面是否是最后一个页面以及系统中存在多少页面(这取决于用户指定的页面大小…以及系统中可能出现的最大结果数-我不确定如何最好地检索)

我意识到,我们可以简单地将JaVers的findChanges方法返回的所有结果加载到内存中,以获得完整计数。不过,还有更有效的替代方案吗

非常感谢, Ben

JQL中没有count()。它可以在将来添加,但性能增益并不明显

在许多情况下,database count()查询并不比select查询快多少。 可以保存的是用于从DB和JSON解析获取快照的网络和应用程序的CPU资源


应该创建一些测试来比较count(*)查询与findChanges()查询来估计性能增益。

还可以分析这两个选项的内存使用情况。似乎依靠DB返回count(*)可以避免将记录加载到JVM中,然后在JVM中对记录进行计数。尽管如此,贾维斯还是很棒!谢谢顺便说一句,这个计数功能看起来是一个很好的候选贡献。如果你想帮助开发JaVers,请告诉我。我真的很想帮助你——JaVers绝对是一个有价值的项目。我可能需要一段时间才能获得带宽,但我会在可能的情况下联系基地,了解贡献情况。好的,准备好后在gitter chat上找到我