Comment utiliser la clause SQLLangage permettant de communiquer avec une base de données. ORDER BY avec Hibernate 4 ? C'est ce que nous vous proposons de voir dans cet article.
Comment utiliser la clause SQLLangage permettant de communiquer avec une base de données. ORDER BY avec Hibernate 4 ?
Si vous savez faire une requête simple avec Hibernate 4, la mise en place d’ORDER BY est très simple. Elle passe par deux méthodes :
Exemple : la liste des commandes triées par prix décroissant :
CriteriaBuilder builder = entityManager.getCriteriaBuilder();
CriteriaQuery<
Commande> criteriaQuery = builder.createQuery(Commande.class);
Root<
Commande> root = criteriaQuery.from(Commande.class);
criteriaQuery.select(root);
criteriaQuery.orderBy(builder.desc(root.get(Commande_.montantTTC)));
TypedQuery<
Commande> typedQuery = entityManager.createQuery(criteriaQuery);
List<
Commande> result = typedQuery.getResultList();
Si à l’inverse vous voulez trier par ordre croissant, il suffit de remplacer la méthode desc() par la méthode asc().
Si votre clause ORDER BY porte sur plusieurs champs, la fonction orderBy() possède un deuxième prototype qui prend en paramètre une collection de javax.persistence.criteria.Order.
Exemple : commandes triées par jour croissant puis par prix décroissant :
CriteriaBuilder builder = entityManager.getCriteriaBuilder();
CriteriaQuery<
Commande> criteriaQuery = builder.createQuery(Commande.class);
Root<
Commande> root = criteriaQuery.from(Commande.class);
criteriaQuery.select(root);
List<
Order> orders = new ArrayList<
Order>();
orders.add(builder.asc(root.get(Commande_.date)));
orders.add(builder.desc(root.get(Commande_.montantTTC)));
criteriaQuery.orderBy(orders);
TypedQuery<
Commande> typedQuery = entityManager.createQuery(criteriaQuery);
List<
Commande> result = typedQuery.getResultList();
Dans cet article, nous allons plonger dans le monde d'Hibernate 6, en commençant par reprendre les bases d’Hibernate et ses principaux concepts. Nous explorerons ensuite les nouveautés et les améliorations apportées par Hibernate 6.
Tuto JQuery : créer à partir d’une simple image dans le DOM une div qui présente une zone agrandie de cette image, de telle sorte que l’on puisse se déplacer sur l’image zoomée simplement en bougeant la souris.
Aujourd’hui, la mobilité est un des principaux investissements IT des entreprises. Et pour cause, l’utilisation des smartphones et des tablettes est de plus en plus répandue. Seulement l’investissement en mobilité des entreprises n’est pas uniquement con