Maison > Java > javaDidacticiel > Comment limiter les résultats des requêtes dans Hibernate 3 (sans utiliser LIMIT) ?

Comment limiter les résultats des requêtes dans Hibernate 3 (sans utiliser LIMIT) ?

Mary-Kate Olsen
Libérer: 2024-12-31 04:39:10
original
235 Les gens l'ont consulté

How to Limit Query Results in Hibernate 3 (without using LIMIT)?

Limiter les requêtes en JPQL ou HQL

Dans Hibernate 3, l'équivalent de la clause MySQL LIMIT en HQL n'est pas directement disponible. Les tentatives de l'utiliser dans HQL entraîneront une erreur, car LIMIT n'est pas une clause prise en charge.

À l'origine, cette fonctionnalité était involontairement disponible dans Hibernate 2 en raison d'une bizarrerie dans l'analyseur HQL. Il a remplacé les éléments HQL reconnus tout en laissant les parties non reconnues, permettant aux utilisateurs de se faufiler dans les instructions SQL natives.

Cependant, dans Hibernate 3, l'analyseur HQL a été considérablement amélioré et utilise un AST (arbre de syntaxe abstraite). Cette implémentation d'analyse stricte interdit explicitement les clauses non prises en charge telles que LIMIT.

Par conséquent, l'approche recommandée pour limiter les résultats des requêtes dans Hibernate 3 consiste à utiliser la méthode setMaxResults() sur l'objet Query. Cette option permet de contrôler le nombre maximum de résultats renvoyés par la requête, obtenant ainsi la même fonctionnalité que la clause LIMIT.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal