Je trouve très pratique de réaliser des requêtes via l'API Criterai d'Hibernate.
Les FetchMode sont particulièrement pratique, et évite des get à répétitions...
Mais j'aimerai savoir s'il y a un gain niveau performance ?
Je trouve très pratique de réaliser des requêtes via l'API Criterai d'Hibernate.
Les FetchMode sont particulièrement pratique, et évite des get à répétitions...
Mais j'aimerai savoir s'il y a un gain niveau performance ?
Personne ne sait ? Ou utilse cette techno ?
Perso, j'aime bien mais j'aimerai savoir si c'est envisageable au niveau grosse applications...
Il me semble de memoire que criteria utilise des requetes SQL et non HQL.
Cela est, il est evident, un gain de perf mais est aussi la porte ouverte a l'utilisation de specificitées des SGDB en perdant donc un des grds attrait de hibernate : une relative independance vis a vis du SGDB.
ciao
Euh mais les requète HQL sont elle aussi transformé en SQL non ?
C'est une alternative au HQL plutot ?
Il y as principalement 3 utilisations d'hibernate !
- Le mapping
- Les requêtes statiques
- Les requêtes dynamiques
Pour le mapping, on utilise la définition décrite dans les fichiers HBM.
Pour les requêtes statiques, le HQL est préférable au SQL mais les deux peuvent être utilisé. Idéalement, les requêtes doivent apparaitres dans le fichier HBM (externalisation).
Dans certain cas, des requêtes doivent être créees dynamiquement, on utilise alors soit des Criteria, soit des Example !
Au final, c'est toujours du SQL qui est généré et invoqué !
Example et Criteria prennent un peu plus de temps parcequ'il est nécessaire de construire la requête et de la valider syntaxiquement à chaque fois mais en terme d'execution, c'est rigoureusement la même chose !
Donc, si vous avez un nombre d'argument fini et immuable, requêtes statique en HQL ou SQL
Si vous avez un nombre d'argument variable, Criteria ou Example
Evitez la génération de HQL ou SQL par concaténation de chaine de caractère !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager