Denna sida beskriver hur man från en servlet (med Java) kan läsa data från ett HTML-formulär.
Nedan visas HTML-koden för ett enkelt formulär med en textruta och en "skickaknapp" (submit-knapp).
<form method="get" action="/servlet/EnkeltFormularServlet
<input type="text" name="namn">
<input type="submit" value="Skicka">
</form>
(Anpassa sökväg i ACTION-attributet för att passa den sökväg där era servlets finns.)
| Till början på sida |
Vår servlet-klass bör ärva från superklassen HttpServlet.
/*
* Java Servlet som genererar en hemsida som skriver ut namnet som
* besökare fyller i ett formulär.
* Björn Persson, EkI, MdH - 2004-01-26.
* bjorn.persson@mdh.se
*/
//Importera paket för...
import javax.servlet.*; //servlet
import javax.servlet.http.*; //servlet
import java.io.*;
//I/O
public class EnkelFormularServlet extends HttpServlet
{
/***************************************************
* Implementation av metoden doGet() som anropas av webbserver då
* webbläsare begär servlet med metoden HTTP-GET
****************************************************/
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws IOException
{
//Tala om för webbserver vad som kommer att skickas (d.v.s.
// HTML-kod)
response.setContentType("text/html");
//Hämta objekt för "output" för att kunna skriva till den
// genererade hemsidan
PrintWriter out = response.getWriter();
//Hamta text från textruta med namnet 'namn'
String strNamn = request.getParameter("namn");
//Skriv ut HTML-kod
out.println("<HTML>");
out.println("<HEAD>");
out.println(" <TITLE>Hello " + strNamn
+ "</TITLE>");
out.println("</HEAD>");
out.println("<BODY>");
out.println("<H1>Hello " + strNamn + "</H1>");
out.println("</BODY>");
out.println("</HTML>");
} // doGet()
/***************************************************
* Implementation av metoden doPost() som anropas av webbserver då
* webbläsare begär servlet med metoden HTTP-POST
****************************************************/
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws IOException
{
//Anropa egen impl. av doPost() - skicka
med inparametrarna
doGet(request, response);
} // doPost()
} //class EnkelFormularServlet
| Till början på sida | Tillbaka till Java |