Infinitive schreef op 13 september 2004 @ 15:33:
[...]
Welk object heeft dan op dat moment de verantwoordelijkheid voor het aanmaken van nieuwe BL objecten en DAOs?
Bijv. geef je de Primary Key mee aan je BL object zodat hij de corresponderende DAO(s) kan laden vanuit de DAL? Maar hoe maak je dan een nieuw BL object itt het fetchen van een ervan? In een aparte collections of manage klasse? En saven zijn dan eerst de DAO objecten, of heb je DAO achtige operaties op je BL objecten zitten? (bijv. door een gedeelte van je BL objecten te laten inheriten van DAO objecten)?
Ik begrijp niet helemaal wat je bedoelt (je gebruikt ook wel erg veel afkortingen

), maar volgens mij kom ik steeds hetzelfde tegen. Ik had laatst het 'geweldige' idee om mijn constructor te gebruiken voor het construeren van objecten. Jaja.
Echter, ik had daarbij de beperking opgelegd dat ik pas het object kon maken als ik aan de minimale eisen van het object voldeed. In het geval van een product was dit de Naam, de Prijs, en een ID uit de Database. Dat laatste is of enorm stom, of ik heb het niet goed uitgewerkt, want het werkt enorm rot. Al mijn gegevens meeslepen naar een 'save klasse' is echt een gedoe, en de beste manier die ik had verzonnen was gewoon een HashMapje met daarin alle gegeven. In feite dus gewoon een object als 'Product', maar dan in de vorm van een Map. Niet echt handig dus.
Ik ben er nu weer vanaf gestapt, en maak ze gewoon weer met een lege constructor. De database ID zit nog wel steeds in het object (wat ik op zich ook wel irritant vind, maar waar ik nog geen goed alternatief voor gevonden heb).
Mijn business logic zou ik graag buiten mijn objecten stoppen. Dus niet in het object, maar ook niet in de actions. Eigenlijk wou ik graag Jess gaan gebruiken daarvoor, maar ik weet ook nog niet waar die regels dan vastgelegd dienen te worden.