Bonjour,
Je suis déséspérement à la recherche d'expériences concernant l'utilisation d'Hibernate dans une application 2/tiers (Swing).
Ma problématique
J'ai un graphe d'objets très complexe et relativement volumineux.
Je projette aujourd'hui d'utiliser la Session-Per-Transaction sur une couche Dao (Pattern Dao). Le problème que je rencontre (comme apparement beaucoup d'autres) concerne le lazy-loading. J'ai besoin de l'utiliser pour eviter une saturation memoire lors du parcours profond du graphe.
Dans l'absolu, j'aimerais pouvoir créer un proxy dynamique sur mes entités afin d'ouvrir la session On-Demand et rattacher mon entité détachée mais je n'ai aucune piste plausible pour son implémentation (trop d'entités).
Ma première démarche avait été de m'orienter vers l'utilisation d'AOP afin de créer des pointcuts sur mes lazy-properties.
1/ AOP pourrait il me sauver ?
2/ Si oui, dois-je impérativement me tourner vers Spring-AOP pour esperer reussir ou existe-t-il une implémentation plus simple ?
3/ Serait-il tout de même plus interressant d'utiliser la Session-Per-Application en la flushant régulièrement ?
4/ En utilisant DAO, dois-je envisager une stratégie de chargement par cas d'utilisation (methode rencontré dans plusieurs forums) ce qui entrainerait un alourdissement de ma Dao ?
5/ Existe-t-il dans l'API hibernate un système Observer afin d'intercepter la lazy Exception et rattacher mon objet avant un nouvel essai ?
6/ Si non, existe-t-il une solution similaire ThirdParty dont je n'aurais pas connaissance ?
7/ Existe-t-il une autre méthode plus judicieuse ?
Merci à tous pour votre aide future.
Partager