2016-04-28 3 views
0

S'il vous plaît quelqu'un pourrait m'aider à comprendre le concept de - "Eager fetching avec jointures" dans Hibernate avec un simple exemple de requête et un tableau représentant le résultat de la requête. J'ai cherché sur Internet mais je n'ai pas pu obtenir d'explication avec un bon exemple. S'il vous plaît veuillez aider et me guider.Eager fetching avec jointures

Répondre

0

L'extraction rapide récupère les données de la table jointe immédiatement dans l'extraction initiale de l'objet, plutôt que d'attendre que l'application la demande explicitement. D'un point de vue SQL, il peut être plus efficace, en supposant que vous souhaitiez toujours utiliser les données recherchées avec impatience. En général, il est souvent préférable d'attendre que l'application ait besoin des données. À ce stade, Hibernate crée une nouvelle requête pour récupérer les données. C'est vraiment la même idée que les constructions d'application paresseuse-initialisation - ne pas créer cette connexion/socket/ouvrir une ressource/quoi que ce soit jusqu'à ce que vous en avez réellement besoin, si vous en avez besoin.

La recherche rapide peut également être très non-scalable, s'il s'agit d'une relation parent-enfant où l'enfant a 1000s/10000s/1000000s d'objets enfants. C'est probablement l'endroit où la plupart des problèmes de performance d'hibernation se posent, la solution est d'aller chercher les enfants manuellement - pas aussi pratique, mais votre application sera heureuse.

[Désolé, je n'ai pas d'exemple à portée de la main, mais j'ai pensé que je pourrais assez bien l'expliquer.]