# Designfrage



## Sanix (9. Jun 2006)

In meinem Servlet wird eine Datenbankabfrage durchgeführt. Danach wird auf eine Seite weitergleitet in der die Daten ausgegeben werden. Würdet ihr die Daten, welche ihr von der Datenbank erhalten habt, zuerst in eine HashMap laden, damit man unabhängig von der Verbindung ist oder direkt das ResultSet weitergeben?


----------



## The_S (9. Jun 2006)

also bei uns wird das immer erst in ne HashMap o. ä. geladen.


----------



## LordSam (13. Jun 2006)

Kommt darauf an 

Wenn es z.B. größere Datenmengen sind, ist es möglicherweise eine ziemliche Speicherverschwendung wenn Du erst alles in eine Map lädst, nur um noch in deinem Servlet die Connection/Resultset etc. zu schließen. Wenn Du gar z.B. Hibernate verwendest, bei dem manche Informationen erst beim Zugriff (=Lazy Loading) geladen werden, ist es gar tödlich die Connection schon in deinem Controller-Servlet zu schließen.

Einige Alternative Lösungen sehen so aus, das Du z.B. Servlet-Filter in zusammenhang mit der ThreadLocale Klasse verwendest um die Connection an den aktuellen Thread zu binden und dann erst am Ende der Verarbeitung zu schließen....


----------



## Guest (13. Jun 2006)

Ich würde die Schichten trennen. Sollte es zu langsam sein, dann direkt CachedRowSet
zurückgeben oder gleich das ValueListHandler-Pattern verwenden.


----------

