Я использовал следующие критерии гибернации.
Criteria criteria = session.createCriteria(Student.class);
ProjectionList projectionList = Projections.projectionList();
projectionList.add(Projections.groupProperty("studentId"));
projectionList.add(Projections.count("studentId"));
criteria.setProjection(projectionList);
return criteria.list();
Возвращает список объектов, и объекты имеют два поля: studentId и count (studentId). Я хочу отсортировать этот список по количеству (studentId) по убыванию. Как мне сделать это в спящем режиме?
В настоящее время я получаю
{[1, 5], [2, 7], [3,4]}
Я хочу получить это
{[2, 7], [1, 5], [3,4]}
Решение:
это решает проблему:)
Criteria criteria = session.createCriteria(Student.class);
ProjectionList projectionList = Projections.projectionList();
projectionList.add(Projections.groupProperty("studentId"));
projectionList.add( Projections.alias(Projections.count("studentId"),"count"));
criteria.setProjection(projectionList);
criteria.addOrder(Order.desc(("count")));
return criteria.list();