Die sinnvolle Vorgehensweise

Status
Nicht offen für weitere Antworten.

bronks

Top Contributor
Hi!

Ich hab innerhalb der letzten 3 Wochen 2 Bücher (Das Galileo Javabuch und Coreservlets und JSP von der Sunsoft Press) durchgearbeitet. Nebenbei hab ich mir noch einige Beispiele aus dem Internet zur Ansicht gefischt. Alle Services laufen, die Beispiele sind durchgekauft und verstanden ... Eigene Entwicklungen sind auch am laufen, aber die Technik ...

Bis auf ein paar Kleinigkeiten mit Ahaeffekt, welche nicht weiter Dokumentiert wurden habe ich nichts entdeckt, was ich mit CGI nicht genauso effizient lösen kann. Es waren hauptsächlich in den Büchern nur uninteressante Standalone JSPs und Servlets, welche sich ein paar Parameter zugeschoben haben.

Das was ich im Internet so an Beispielen gefunden habe läuft immer auf die Art:
- Datenbank verbinden und Datenlesen
- Daten anzeigen
- Button oder Link wird geklickt
- Ein anders JSP oder Servlet wird mit Parametern aufgerufen
- Datenbank verbinden und Datenlesen
- Daten anzeigen
- ..... usw. usw...

Da hat sich m.E. jemand bemüht etwas funktionierendes auf die Beine zu stellen. Ich glaube nicht wirklich, daß das die Technik ist, wie man mit Java auf dem Server arbeitet.

Ich erwarte eigentlich eine einzige Datenbankverbindung, welche hunderte User gleichzeitig bedient und nicht, daß wegen jedem Hit auf die DB die Verbindung neu gebastelt werden muß. Servlets und JSPs haben Objekte im gemeinsamen Zugriff. Threads die auf gemeinsame Daten zugreifen und auch ihre eigenen Daten verwalten.

Hab ich mir zuviel vorgestellt? Kann mir jemand konkret etwas dazu sagen? Gibt es evtl. Beispiele, wie ich es mir vorstelle? Auch für Stichworte nach denen ich suchen kann bin ich dankbar.

Danke!

Bronks
 

Bleiglanz

Gesperrter Benutzer
Ich erwarte eigentlich eine einzige Datenbankverbindung, welche hunderte User gleichzeitig bedient und nicht, daß wegen jedem Hit auf die DB die Verbindung neu gebastelt werden muß. Servlets und JSPs haben Objekte im gemeinsamen Zugriff. Threads die auf gemeinsame Daten zugreifen und auch ihre eigenen Daten verwalten.
DB -> das ist auch so: Stichwort DataSource

geimeinsamer Zugriff -> Stichwort MVC (z.B. Struts)

aber: es gibt keine "Threads" am Server, ausser denjenigen, die bei einem HTTP Request jeweils gestartet werden [es gibt natürlich immer Wirrköpfe, die sowas implementieren]
 

Jockel

Top Contributor
Bleiglanz hat gesagt.:
Ich erwarte eigentlich eine einzige Datenbankverbindung, welche hunderte User gleichzeitig bedient und nicht, daß wegen jedem Hit auf die DB die Verbindung neu gebastelt werden muß. Servlets und JSPs haben Objekte im gemeinsamen Zugriff. Threads die auf gemeinsame Daten zugreifen und auch ihre eigenen Daten verwalten.
DB -> das ist auch so: Stichwort DataSource
Als alternatives Stichwort bei deiner Suche: 'Connection Pooling'.
 

bronks

Top Contributor
Bleiglanz hat gesagt.:
... Stichwort MVC (z.B. Struts) ...
Ich hab mir die Sache mit den Struts mal angesehen. Das ganze ist ja so umfangreich und aufwendig, daß ich meine Zweifel hab, daß es sich für kleinere Projekte überhaupt lohnt. Auf der anderen Seite denke ich wieder, daß es sich eigentlich kaum lohnt Java auf dem Server zu benutzen, wenn man solche Techniken nicht richtig anwendet und alles andere ergibt einen schlechten Entwicklungsstil.


[quote="Jockel]'Connection Pooling'.[/quote]
Dazu findet man ja sehr viel. Hast Du evtl. einen Link, wo das Thema mit Java auf dem Webserver behandelt wird?
 

Bleiglanz

Gesperrter Benutzer
Hast du einen Tomcat?

Schau unter localhost:8080 die Doku an, ist der beste Start für Connection-Pooling/DataSources auf dem "Server"

daß es sich eigentlich kaum lohnt Java auf dem Server zu benutzen, wenn man solche Techniken nicht richtig anwendet und alles andere ergibt einen schlechten Entwicklungsstil
das ist Quatsch, man kann auch ohne Struts (und alle anderen "Frameworks") gute, saubere Webanwendungen schreiben; dazu bastelt man sich eben selbst einen kleinen Controller usw.
 

bronks

Top Contributor
Bleiglanz hat gesagt.:
Hast du einen Tomcat? ... Connection-Pooling/DataSources auf dem "Server"
Hab mir schnell mal einen installiert. Die Doku ist brauchbar. Danke!


Bleiglanz hat gesagt.:
... dazu bastelt man sich eben selbst einen kleinen Controller usw ...
Hast Du ne Ahnung, wo man sich sowetwas als einfach gehaltenes Beispiel ansehen kann?
 

bronks

Top Contributor
Wer jetzt solche Verständnisprobleme hatte, wie ich vor ein paar Tagen noch, dem empfehle ich die Tuts vom JDeveloper und die Tuts von Netbeans. Die machen auf mich einen sehr sauberen und aufgeräumten Eindruck.

Jetzt bin ich ein bissl angeckt und frage mich, wie man das wohl am sauberbsten löst. Immer wieder lese ich, daß ich Logik und Programmcode aus der JSP raushalten soll. Wie bringe ich jetzt am günstigesten eine Tabelle (Array) vom Controller in der JSP angezeigt?
 

Bleiglanz

Gesperrter Benutzer
im Controller

request.setAttribute

und in der jsp

<jsp:useBean

(das ist der "normale" übergabemechanismus)

und anzeigen dann mit den JSTL tags (foreach usw.)
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben