Comment utiliser la clause SQL ORDER BY avec Hibernate 4 ? C'est ce que nous vous proposons de voir dans cet article.
Comment utiliser la clause SQL 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.
Les Design Patterns ne sont pas qu'un jargon de développeurs chevronnés ! Ce sont des solutions éprouvées qui transforment la manière dont vous abordez vos projets. Que ce soit pour rendre votre code plus modulaire, évolutif ou tout simplement plus clair, ces outils peuvent changer votre quotidien. Dans cet article, nous allons explorer quelques patterns incontournables, comprendre pourquoi ils sont essentiels et comment les appliquer efficacement.
Linux est installé sur votre machine, votre Secure Boot est activé dans votre BIOS (pardon.. votre UEFI), et tout fonctionne sans problème ! Mais est-ce que vous vous doutez que, pour démarrer, votre distro Linux préférée passe par un programme signé par Microsoft ? Oui, Microsoft... Sur une machine Linux. Et tout ça “à cause” du Secure Boot.