Bonjour,
J'ai remarqué un problème lorsque je charge une liste d'entités avec une requête JPQL.
Un exemple tout simple: une entité Personne a une entité Adresse en attribut, j'ai donc une annotation @OneToOne(cascade = CascadeType.ALL, fetch=FetchType.LAZY) de Personne vers Adresse.
Cette annotation est sensée éviter le chargement de l'adresse lors d'une requête sur l'entité Personne mais étrangement, pour un findAllPersonnes() par exemple, j'ai constaté que pour n Personnes, n requêtes de sélection d'Adresse se lancent, générant de gros problèmes de performance.
J'ai contourné le problème en chargeant en une seule requête les personnes et leurs adresses grâce aux join fetch mais ce n'est pas ce que je veux.
Est-ce à cause du CascadeType.ALL?
Merci de m'aider
Partager