Hoi,
Ik heb een applicatie waarbij het model deels bestaat uit Hibernate entities, en deels uit pojo's die in een andere datastore (Blackboard in dit geval) worden opgeslagen. De applicatie gebruikt eigenlijk alleen Hibernate als framework (en GWT, maar dat staat hier los van), en de bedoeling is dat er een zelf gekluste dao laag tussen de business/views en het model komt te hangen, om eea aan queries te centraliseren enz. Spring of andere frameworks worden niet gebruikt (is ook geen tijd voor om daar in te duiken).
Het probleem is dat de niet-Hibernate model objecten referenties hebben naar de Hibernate entities. Na het opnieuw inladen van de objecten uit de store (bv. serialized uit BB, ik ken het exacte opslagformaat niet), zijn de Hibernate objecten detached van de sessie en moeten ze opnieuw attached worden (in het geval van het opslaan van de gehele objecten) of moeten de hibernate objecten opnieuw opgevraagd worden (wanneer je bv. alleen de key opslaat in je niet-Hibernate model objecten).
De vraag is nu even waar ik dit het beste kan doen en hoe ik dit op een nette manier kan doen. Ik kan het model het allemaal zelf uit laten zoeken, maar in dat geval moet je _of_ direct Hibernate acties in je model opnemen, _of_ je model de dao laag aan laten roepen. Ik kan ook na het inladen van de niet-Hibernate model objecten (via de dao laag), de dao laag ook meteen de verschillende Hibernate objecten laten afhandelen. Alleen moet de dao laag hierbij precies weten welke Hibernate objecten zich in het model bevinden, wat de afhankelijkheden weer erg vergroot. Misschien is er nog wel een andere manier, waar ik nog niet aan gedacht heb.
Wat lijkt jullie een goede manier om dit op te lossen?
Ik heb een applicatie waarbij het model deels bestaat uit Hibernate entities, en deels uit pojo's die in een andere datastore (Blackboard in dit geval) worden opgeslagen. De applicatie gebruikt eigenlijk alleen Hibernate als framework (en GWT, maar dat staat hier los van), en de bedoeling is dat er een zelf gekluste dao laag tussen de business/views en het model komt te hangen, om eea aan queries te centraliseren enz. Spring of andere frameworks worden niet gebruikt (is ook geen tijd voor om daar in te duiken).
Het probleem is dat de niet-Hibernate model objecten referenties hebben naar de Hibernate entities. Na het opnieuw inladen van de objecten uit de store (bv. serialized uit BB, ik ken het exacte opslagformaat niet), zijn de Hibernate objecten detached van de sessie en moeten ze opnieuw attached worden (in het geval van het opslaan van de gehele objecten) of moeten de hibernate objecten opnieuw opgevraagd worden (wanneer je bv. alleen de key opslaat in je niet-Hibernate model objecten).
De vraag is nu even waar ik dit het beste kan doen en hoe ik dit op een nette manier kan doen. Ik kan het model het allemaal zelf uit laten zoeken, maar in dat geval moet je _of_ direct Hibernate acties in je model opnemen, _of_ je model de dao laag aan laten roepen. Ik kan ook na het inladen van de niet-Hibernate model objecten (via de dao laag), de dao laag ook meteen de verschillende Hibernate objecten laten afhandelen. Alleen moet de dao laag hierbij precies weten welke Hibernate objecten zich in het model bevinden, wat de afhankelijkheden weer erg vergroot. Misschien is er nog wel een andere manier, waar ik nog niet aan gedacht heb.
Wat lijkt jullie een goede manier om dit op te lossen?