Ik ben van plan voor een nieuwe project eerst mijn O-R framework te herschrijven. Voor het bijhouden van een collectie van objecten in een parent object heb ik nu een speciaal collectie object geschreven die wijzigingen direct doorvoert en dus de bewerkingen gelijk van kracht laat zijn op de database. Dit wil ik weg werken zodat ik met collecties kan doen wat ik wil.
Ik wil gewoon een plain array hebben waarin ik nieuwe items kan stoppen en waaruit ik ze ook gewoon weer weg kan halen. Als ik dan voor het object aangeef dat de wijzigingen opgeslagen moeten worden, dan wil aan de kant van de data access layer dus bekijken wat er allemaal is uitgevoert met die array en hoe dit moet worden doorgevoert als acties richting de database.
Nu weet ik alleen niet goed hoe ik dit voor elkaar moet krijgen. Ik weet toevallig dat hibernate ook zoiets ondersteund, maar hoe dat werkt weet ik niet. Ik zou bij het laden van een collectie een kopie van de array bewaren en dan achteraf vergelijken met de eventueel gewijzigde. Dat lijkt me echter ook niet de meest zuivere en performance bewuste methode.
Heeft iemand dit wel eens geprobeerd? Ik ben wel benieuwd naar ideeen hierover. Het hoeft trouwens niet persé in php te zijn. Ik hoef in princiepe helemaal geen code te zien, het gaat meer om het idee er achter, dat zou toepasbaar moeten zijn in meerdere talen.
Ik wil gewoon een plain array hebben waarin ik nieuwe items kan stoppen en waaruit ik ze ook gewoon weer weg kan halen. Als ik dan voor het object aangeef dat de wijzigingen opgeslagen moeten worden, dan wil aan de kant van de data access layer dus bekijken wat er allemaal is uitgevoert met die array en hoe dit moet worden doorgevoert als acties richting de database.
Nu weet ik alleen niet goed hoe ik dit voor elkaar moet krijgen. Ik weet toevallig dat hibernate ook zoiets ondersteund, maar hoe dat werkt weet ik niet. Ik zou bij het laden van een collectie een kopie van de array bewaren en dan achteraf vergelijken met de eventueel gewijzigde. Dat lijkt me echter ook niet de meest zuivere en performance bewuste methode.
Heeft iemand dit wel eens geprobeerd? Ik ben wel benieuwd naar ideeen hierover. Het hoeft trouwens niet persé in php te zijn. Ik hoef in princiepe helemaal geen code te zien, het gaat meer om het idee er achter, dat zou toepasbaar moeten zijn in meerdere talen.