Home > Software engineering >  Return list in alphabetical order using Hibernate
Return list in alphabetical order using Hibernate

Time:01-06

I have a function that returns a list of templates(unsorted); can someone tell me how I can get the list in a sorted format?

    public List<FormTemplate> listDomainTemplates(Integer id) {
        Domain domain = domainService.getDomain(id);
        if (domain == null) {
            return new ArrayList<>();
        }

        CriteriaBuilder cb = sessionFactory.getCurrentSession().getCriteriaBuilder();
        CriteriaQuery<FormTemplate> query = cb.createQuery(FormTemplate.class);
        Root<FormTemplate> application = query.from(FormTemplate.class);
        query.select(application);
        Predicate predicate = cb.equal(application.get("domain"), domain);
        query.where(predicate);

        Query<FormTemplate> q = sessionFactory.getCurrentSession().createQuery(query);

        return q.getResultList();
    }

CodePudding user response:

Please experiment with following:

query.orderBy(cb.asc(application.get(...));

... - should point to FormTemplate field to sort, I suppose.

  •  Tags:  
  • Related