Formulardaten
In Servlets können Werte von Parametern (unabhängig ob es sich um GET- oder POST-Parameter handelt) über die Methode
getParameter()
eines HttpServletRequest
-Objekts abgerufen werden. Der Funktion wird dabei als
Übergabeparameter der Name des abzurufenden Parameters übergeben. Als Rückgabe erhalten Sie den Wert des
Parameters in Form des Datentyps String
. Existiert der Parameter nicht, so wird null
zurückgegeben.
Im folgenden Beispiel wird über die doGet()
-Methode ein Formular (mit der HTTP-Methode POST) ausgegeben. Die
Parameterwerte werden in der doPost()
-Methode ausgegeben.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | package de.hwh.bsp.formular; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class FormServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Ausgabe als HTML-Seite response.setContentType( "text/html;charset=UTF-8" ); // Ausgabe durchführen PrintWriter out = response.getWriter(); out.println( "<!DOCTYPE html>" ); out.println( "<html>" ); out.println( " <head>" ); out.println( " <title>Formulardaten - Java EE Servlet Code-Beispiel</title>" ); out.println(); out.println( " <meta charset=\"utf-8\" />" ); out.println(); out.println( " <meta name=\"robots\" content=\"noindex,nofollow\" />" ); out.println( " <meta name=\"publisher\" content=\"Homepage-Webhilfe\" />" ); out.println( " </head>" ); out.println(); out.println( " <body style=\"line-height: 1.5em;\">" ); out.println( " <form method=\"post\">" ); out.println( " <b>Bitte füllen Sie das Formular aus:</b><br />" ); out.println( " Vorname: <input type=\"text\" name=\"vorname\" /><br />" ); out.println( " Nachname: <input type=\"text\" name=\"nachname\" /><br />" ); out.println( " <input type=\"submit\" value=\"Absenden\" />" ); out.println( " </form>" ); out.println( " </body>" ); out.println( "</html>" ); out.close(); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Zeichenkodierung auf UTF-8 setzen (für Formulardaten) request.setCharacterEncoding( "UTF-8" ); // Ausgabe als HTML-Seite response.setContentType( "text/html;charset=UTF-8" ); // Ausgabe durchführen PrintWriter out = response.getWriter(); out.println( "<!DOCTYPE html>" ); out.println( "<html>" ); out.println( " <head>" ); out.println( " <title>Formulardaten - Java EE Servlet Code-Beispiel</title>" ); out.println(); out.println( " <meta charset=\"utf-8\" />" ); out.println(); out.println( " <meta name=\"robots\" content=\"noindex,nofollow\" />" ); out.println( " <meta name=\"publisher\" content=\"Homepage-Webhilfe\" />" ); out.println( " </head>" ); out.println(); out.println( " <body style=\"line-height: 1.5em;\">" ); out.println( " <b>Ihre Eingaben im Formular waren:</b><br />" ); out.println( " Vorname: " + request.getParameter( "vorname" ) + "<br />" ); out.println( " Nachname: " + request.getParameter( "nachname" ) + "<br />" ); out.println( " </body>" ); out.println( "</html>" ); out.close(); } } |