Ha oui, je commence à comprendre ce que tu essaie de faire.
Là c'est une balance à atteindre.
Si en utilisant left/right tu sais que tu va d'office passer sur tous les éléments, alors il peut effectivement être intéressant de demander à Hibernate de charger tous les Nodes dans son cache. La question est de savoir si tu a vraiment besoin de tous les node ou seulement d'un sous-set. Parce que charger 500 nodes pour n'en lire que 2, ce serait dommage , charger 500.000 node pour en utiliser 2000, on approche du suicidaire point de vue mémoire
Bref, c'est plus l'usage qu'il faut éventuellement revoir.
Le mieux serait clairement, selon moi, un
getSession.query("from Nodes where ....").uniqueResult();
au passage, ça évite de tomber sur un node "au hasard"
Partager