Servlets: doPost() etc. anstatt service()

  • Themenstarter ChristianReuter
  • Beginndatum
Status
Nicht offen für weitere Antworten.
C

ChristianReuter

Gast
Hallo, ich habe gerade angefangen, mich mit Servlets zu beschäftigen.
Soweit ich weiss, habe ich ja nun die Möglichkeit eine service()- Methode zu implementieren und den entsprechenden Anfragetyp abzufragen oder ich schreibe einzelne Methoden für doPost(), doGet() etc.
Meine Frage wäre nun, ob es einen Vorteil bei der zweiten Variante gibt. Und wenn ja, welchen?

Vielen Dank schonmal
Christian
 
A

Anmeldeboykotierer

Gast
Hi,
bei der sehr allgemeinen Service-Methode wird automatisch die dazugehörige Methode aufgerufen. Diese Methode sollte einfach nie überschrien werden. Diese Methode wird zwar zur Verfügung gestellt, sollte dich aber gar nicht weiter interessieren!
Wichtig ist für dich, dass du die doGet() bzw. doPost auch implementierst. Hier solltest du auch darauf achten, dass du vermeidest auf beide Ereignisse zu reagieren. Es sollte (aus Sicherheitsgründen) der Anfrage entsprechend entweder die doGet() oder doPost() sein.
Wie gesagt, kein Vorteil bei der service(), die ist nicht zum überschreiben gedacht!
 
C

ChristianReuter

Gast
danke erstmal für die antwort, aber so ganz hab ich das leider immer noch nicht verstanden.
was ist denn jetzt konkret besser an der verwendung von dopost() etc.?
bzw. warum soll ich eben die verwenden und nicht die service()? (das die nicht überschrieben werden soll, hab ich gesehen, aber warum?)
 

HLX

Top Contributor
Ein Blick in den Source verrät: Die service()-Methode ist nicht dafür da um eine HTTP-Methode zu verarbeiten, sondern auf die HTTP-Anfrage allgemein zu reagieren und dann mittels aufruf der jeweiligen do*** nach der gesendeten HTTP-Methode zu unterscheiden. Dabei wird nicht nur GET und POST, sondern auch HEAD, PUT etc. verarbeitet.

Da dein Servlet auf unterschiedliche HTTP-Methoden verschieden reagieren dürfte, macht es Sinn diese Reaktion in der jeweiligen do*** Methode zu implementieren. Wird dein Servlet über ein GET angefordert werden in deiner Anwendung möglicherweise Initialwerte gesetzt. Bei einem POST wird sicherlich ein Formular verarbeitet.
 

Leroy42

Top Contributor
Anmeldeboykotierer hat gesagt.:
Es sollte (aus Sicherheitsgründen) der Anfrage entsprechend entweder die doGet() oder doPost() sein.

Was sind denn das für Sicherheitsgründe? :shock:

oder andersrum

Was spricht dagegen, beide Methoden zu überschreiben und auf eine gemeinsame
Methode weiterzuleiten, so daß beiden Anforderungsarten genügt werden kann?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
L JSP/Servlets VS JavaScript Java Basics - Anfänger-Themen 4
P Servlets und JDBC Java Basics - Anfänger-Themen 2
aokai Zwei Fragen zu Servlets / JSP Java Basics - Anfänger-Themen 3
L java.lang.NoClassDefFoundError / SIP-Servlets Java Basics - Anfänger-Themen 4
A Servlets: Mehrere Parameter übergeben Java Basics - Anfänger-Themen 2
A Tutorial Java Servlets Java Basics - Anfänger-Themen 3
G Prinzipieller Ablauf bei Servlets Java Basics - Anfänger-Themen 25
G Servlets: Erwartete/Angelegte Pfade von Tomcat/Eclipse Java Basics - Anfänger-Themen 2
L [Web/Servlets] welches Framework verwenden? Java Basics - Anfänger-Themen 10
M Servlets und Observer Java Basics - Anfänger-Themen 2
F config.xml innerhalb eines Servlets laden Java Basics - Anfänger-Themen 4
L Kompilieren von Servlets Java Basics - Anfänger-Themen 3
P Gibt es Probleme mit Runtime Objekten in Servlets? Java Basics - Anfänger-Themen 3
P php -> Java Servlets . Bilder Java Basics - Anfänger-Themen 3
G Problem - mehrere Servlets einbinden Java Basics - Anfänger-Themen 6
F Servlets, Formulare und ich weiß keine Lösung Java Basics - Anfänger-Themen 4
0x7F800000 getParameter in doPost() funktioniert nicht wegen enctype? Java Basics - Anfänger-Themen 11
G doGet und doPost im Servlet nicht überschrieben Java Basics - Anfänger-Themen 9
V doPost parameterübergabe funktioniert nicht. Java Basics - Anfänger-Themen 5
R App soll selbstständig reagieren, anstatt via Models Java Basics - Anfänger-Themen 0
T jOptionPane zum schließen von Fenster, wie "Ja" und "Nein" anstatt Yes und No Java Basics - Anfänger-Themen 2
I Output BigDecimal anstatt double / Problem beim Rechnen Java Basics - Anfänger-Themen 16
I Format Problem mit Wert - bekomme 0,10 anstatt 10,00 Java Basics - Anfänger-Themen 6
P Hashmap anstatt LinkedList? Java Basics - Anfänger-Themen 6
T GUI anstatt Bild schwarzes Rechteck gespeichert Java Basics - Anfänger-Themen 0
U buttonarray[this] anstatt buttonarray[index] ? Java Basics - Anfänger-Themen 12
M Anstatt 1 int Rückgabewert, mehrere Rückgaben mit Arraylist Java Basics - Anfänger-Themen 8
J Array anstatt Begriffe als Indizes Java Basics - Anfänger-Themen 14
I Erste Schritte while anstatt for, if und break Java Basics - Anfänger-Themen 10
K Was benutzen anstatt this? Java Basics - Anfänger-Themen 9
K Polymorphie Objektreferenz als Superklasse anstatt des Objekttypes Java Basics - Anfänger-Themen 12
B List list - anstatt ArrayList list = new ArrayList Java Basics - Anfänger-Themen 10
D JTextField anstatt Jbuttons Java Basics - Anfänger-Themen 9
A POI Einlesen Excel Workbook aus BLOB oder von URL anstatt aus Filesystem ? Java Basics - Anfänger-Themen 3
P (Arbeitstag-) Calendar - 9 anstatt 24 Stunden Java Basics - Anfänger-Themen 12
dl85hej Zeitsitschleife anstatt Timer Java Basics - Anfänger-Themen 5
B String.equals(Object) anstatt "=" Java Basics - Anfänger-Themen 3
Horst79 Temp Datei cachen anstatt physikalische Datei im root Verz? Java Basics - Anfänger-Themen 8
G start-oder paint-Methode anstatt Event-Handling-Methode? Java Basics - Anfänger-Themen 3
S StringBuffer anstatt += Java Basics - Anfänger-Themen 8
C Anstatt Spalte, Zeile mit Comparator sortieren . Java Basics - Anfänger-Themen 5
D contains bei JTextArea anstatt bei JTextField Java Basics - Anfänger-Themen 8
H private anstatt public Java Basics - Anfänger-Themen 2
C Wie kann ich Grichische Buchstaben ausgeben anstatt latein? Java Basics - Anfänger-Themen 2
M Ausgabe in String anstatt auf Stream Java Basics - Anfänger-Themen 17

Ähnliche Java Themen

Neue Themen


Oben