Java 使用OrderBy实现Hibernate

Java 使用OrderBy实现Hibernate,java,hibernate,hibernate-criteria,Java,Hibernate,Hibernate Criteria,我想用OrderBy子句实现Hibernate查询。我试过这个: CriteriaBuilder builder = session.getCriteriaBuilder(); CriteriaQuery<OrdersModel> query = builder.createQuery(OrdersModel.class); Root<OrdersModel> root = query.from(OrdersModel.cl

我想用OrderBy子句实现Hibernate查询。我试过这个:

        CriteriaBuilder builder = session.getCriteriaBuilder();
        CriteriaQuery<OrdersModel> query = builder.createQuery(OrdersModel.class);
        Root<OrdersModel> root = query.from(OrdersModel.class);
        query.select(root).orderBy(root.get("added"));
        Query<OrdersModel> q = session.createQuery(query);

        cdList = q.getResultList();

但行顺序显示不正确。列表排序不正确。

您所说的显示是什么意思?当它们显示在GUI中时,顺序取决于您使用的GUI。第二个选项似乎是正确的。是否已成功执行查询,且数据未仅排序?
CriteriaBuilder builder = session.getCriteriaBuilder();
            CriteriaQuery<OrdersModel> query = builder.createQuery(OrdersModel.class);
            Root<OrdersModel> root = query.from(OrdersModel.class);
            query.select(root);

            query.orderBy(builder.desc(root.get("added")));

            Query<OrdersModel> q = session.createQuery(query).setMaxResults(5);

            cdList = q.getResultList();