Response auswerten

Status
Nicht offen für weitere Antworten.

Sascha Laurent

Aktives Mitglied
Hallo Leute,

ich habe hier mal eine Frage:

über "response.getParam" kann man in JSP ja einen Parameter abfragen. Aber wie macht Ihr am geschicktesten folgendes:Eine Detailseite soll angezeigt werden. Hierzu wird die Seite z.B. wie folgt aufgerufen

http://localhost/myapp.jsp?id=20

anhand der ID wird der Datensatz aus einer mySQL Datenbank mit der ID 20 auf der Detailseite angezeigt. Wie kann ich in der Bean selbst den Parameter ID ermitteln, um vorher die Bean zu befüllen und dann über die EL einfach nur auszugeben?
 
M

maki

Gast
Am besten geht man mit der URL nicht direkt auf eine JSP, sondern zuerst auf ein Servlet(Controller), dieses bereitet Daten(Model) vor und leitet dann auf die entsprechende JSP(View) weiter, auch als MVC bekannt.
 

Sascha Laurent

Aktives Mitglied
Hallo Maki,

hast du hierfür mal ein Beispiel? Das mit MVC ist mir schon alles klar, aber wo und wie fange ich in einer Bean die Request als erstes ab, damit ich auf der Grundlage der Parameter mir den Datensatz der angeforderter ID ermitteln kann, die Bean befüllen und über EL abfragen.
 
S

SlaterB

Gast
die Bean macht gar nix, außer getter + setter für die Daten bereitzustellen,

ein Servlet bekommt aber den Auftrag
doGet(Request ..)
usw.

dort ist also das Request-Objekt denkbar leicht vorhanden, dort ist der richtige Platz um Parameter auszulesen,
zahlreichen wichtigen Code auszuführen, Daten zusammenzustellen, diese im Bean zu speichern (set),
und die JSP liest dann die Daten aus dem Bean (get)

ergo: der/ die/ das Bean muss nix vom Request wissen
 

Sascha Laurent

Aktives Mitglied
Und wenn die Daten dynamisch erzeugt werden sollen, wie bereits eingangs erwähnt, also ich erstelle eine dynamsiche JSP - Seite, diese soll mir anhand eines mitgegebenen Request-Parameter die Daten aus der Datenbank holen, dessen Werte ich ausgeben möchte?

Verstehe ich hier irgendetwas völlig falsch, oder drücke ich mich zu Unverständlich aus?

Aber trotzdem bis hierhin erstmal herzlichen Dank an alle.
 
S

SlaterB

Gast
alles was die JSP machen kann kann genauso das Servlet machen, nur besser,
da es eine normale Java-Klasse ist und keine Text-Datei mit eingebetteten Code,

aber wie auch immer, wenn die JSP was machen soll, dann mach es ruhig so,
selbst die Bean kann ja notfalls auf die Parameter zugreifen,
nur schön ist das nicht, das Servlet ist genau für alles wichtige da,

JSPs nur zur ANZEIGE fertig vorhandener Daten, ganz unabhängig davon, ob die Ids dazu aus dem Request, aus einem Zufallsgenerator, aus der Session, von einem anderen Client oder wer weiß wo kommen,
alle Logik an die eine Stelle, Servlet, alles zur Anzeige an die andere, JSP, das ist Aufgabentrennung,

immer wieder nettes, wenn auch eher theoretischer Punkt:
wenn du später mal eine andere Ausgabe als HTML brauchst, z.B. RMI, WebService, Grafik usw.,
dann brauchst du nur eine andere Weiterleitung, statt JSP die fertigen Daten woanders hin,
das Servlet bleibt weitgehend wie es ist, wichtiger Code in der JSP wäre verloren
 
Zuletzt bearbeitet von einem Moderator:
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben