# Architekturfrage



## alexpetri (18. Jan 2008)

Hallo,

ich bräuchte von Euch mal einen kleinen Gedankenanstoß. Ich habe drei Klassen: Kunden, Rechnungen und Rechnungspositionen. Jeder Kunde kann "N" Rechnungen haben und jede Rechnung kann "N" Rechnungspositionen haben. Soweit logisch.
Die Instanzen werden dann jeweils mit Daten aus der Datenbank befüllt und genau da liegt meine Frage:
Ich mache das im Moment so, das ich mir eine art DatenbankHelper Klasse erstellt habe, wo alle Parameter für die Connection drin sind. Weiterhin gibt es die Methoden "query[void]", "getResultSet[ResultSet]", "close[void]" (solten soweit selbst erklärend sein). Dieses Objekt übergebe ich dann immer jeweils in den Konstruktor meiner drei "Business Objekte" nebst der jeweiligen ID. Das jeweilige Objekt ist dann zuständig für das Füllen des nächsten "Unterobjektes".
Die Frage ist jetzt eigentlich ganz einfach:
Ist das eine Gangbare Lösung für solche Probleme oder geht man prinzipiell anders heran. Ich bin relativ neu in Java und weiß noch nicht so genau wie man derartige Projekte angeht.


----------



## maki (18. Jan 2008)

Eigentlich ist es der falsche Ansatz, zumindest imho.

Es gibt mittlerwile soviele Persistenzframeworks das es kaum lohnt, sein eigenes zu schreiben.

Suche doch mal nach Hibernate/JPA, iBatis, etc. pp.


----------



## alexpetri (18. Jan 2008)

danke für den hinweis.
Die Objekte haben natürlich auch noch berechnungsmethoden.
zum Beispiel die Rechnung sollten auch die methode getSumme enthalten. ist sowas möglich?


----------



## alexpetri (18. Jan 2008)

ich hab mir mal hibernate angeschaut - damit sollte es ja eigentlich funzen.
Eine frage hätte ich dann doch noch:
wie verhält sich denn das ganze (hibernate) mit der Performance?
cached hibernate die Werte eines Objektes?


----------

