# JSP -> DB Zugriff?



## jLn (23. Apr 2008)

Hallo,

ich bin Anfänger in Servlets / JSP und habe folgendes Problem:
Ich habe eine Klasse, die auf eine MySQL-Datenbank zugreift! Wenn ich das per eclipse ausführe
funktioniert das wunderbar, jedoch weiß ich nicht genau ob das über Tomcat auch so funktioniert?

Zum Beispiel die Klasse User besitzt eine toDataBase()-Methode, welche Änderungen an einem User 
in der DB aktualisiert. Nun habe ich eine JSP welche diese Klasse importiert und den Methodenaufruf
tätigt, jedoch bekomme ich keine Fehlermeldung bzw. Exception und alles scheint so als hätte er es ausgeführt.
Hat er zumindest in der DB nicht!

Ich habe viel gehört, dass Leute DB-Zugriffe via Servlets tätigen. Nun muss ich das auch machen oder 
ist es möglich so wie ich es z.Z. in einer Klasse habe, die ich in dem JSP per import reinhole?
Wenn das nicht möglich ist, könntet ihr mir dann einen Tip geben wie ich z.B. die Klasse User 
via Servlet umschreiben könnte?

Vielen Dank schonmal im vorraus ...


----------



## HLX (24. Apr 2008)

DB-Zugriffe aus JSP heraus sind sehr hässlich, da du dafür Java-Code in die JSP einbinden musst.

Besser du rufts aus der JSP-Seite ein Servlet auf, welches die Anfrage übernimmt. An der Stelle in der JSP-Seite, wo du Ergebnisse aus der Operation darstellen willst, verweist du auf Request- oder Session-Attribute welche du im Servlet mit Ergebniswerten füllst. Nach der Befüllung verwendest du den RequestDispatcher um wieder auf die JSP-Seite zu gelangen.

Um die Anwendung mit einer Datenbank außerhalb der Entwicklungsumgebung auf einem Tomcat laufen zu lassen, musst du dem Tomcat den Datenbanktreiber bekannt machen.


----------



## Marsman (25. Apr 2008)

...oder falls Du vorhast, künftig öfter solche Anwendungen zu programmieren, dich gleich in Frameworks einzuarbeiten, die diese Dinge eleganter lösen lassen. Ich habe mit JSF und Hibernate in Kombination gute Erfahrungen gemacht. JSF bietet viele fertige Komponenten. Hibernate hat im Vergleich mit EJB noch den Vorteil, dass es ohne Applicationserver auskommt und daher auch auf dem Tomcat läuft.

Titus


----------



## jLn (26. Apr 2008)

danke für die Antworten, ich werde mir mal die frameworks anschauen!


----------



## homer65 (28. Apr 2008)

Der Aufruf der toDataBase() Methode müßte in einer JSP genauso funktionieren, wie unter Eclipse. Der einzige Unterschied liegt in der Umgebung. Eventuell ist der JDBC Treiber nicht im Classpath? Mal angenommen, die JSP läuft unter Tomcat, so kann man im Ordner log oder so ähnlich mal nach Fehlermeldungen gucken.


----------

