有没有办法使用 Hibernate 的 Criteria API 对结果进行排名?

Chr*_*ams 5 oracle hibernate jpa hql criteria

我有一个查询将变得非常复杂,我们希望将其切换到 Criteria API 以使其易于管理。我们基本上选择一些与过滤器匹配的数据,但根据匹配的过滤器数量对结果集进行排序。我们通过在 select 子句中添加一个字段来跟踪匹配的过滤器数量。

一个例子会有所帮助:

http://sqlfiddle.com/#!4/90e02/2

有什么方法可以使用 Hibernate Criteria API 做到这一点。我们的目标是确保这不会成为创建我们必须维护的大型 HQL 字符串的代码。

我不一定需要一个例子作为答案(虽然那会很棒!)但是一个是/否和一些指向我如何完成它的东西会起作用。