Java Servlets


Your First Servlet - HelloWorld

Now let's write Java - a simple servlet that writes "Hello World!" to the browser: (source)

      import javax.servlet.*;
      import javax.servlet.http.*;
      import java.io.*;

      public class HelloWorld extends HttpServlet {

        public void doGet (HttpServletRequest req, HttpServletResponse resp)
          throws ServletException, IOException
        {
          // Set the content type of the response.
          resp.setContentType ("text/html");

          // Create a PrintWriter to write the response.
          java.io.PrintWriter out = new PrintWriter (resp.getOutputStream());

          // The first part of the response.
          out.println ("");
          out.println (" Test ");
          out.println ("");

          // The greeting.
          out.println ("Yo, Hello World!");

          // Last part.
          out.println ("");
          out.println ("");
          out.close();

          // Screen I/O
          System.out.println ("Inside servlet ... servlet complete");
        }

        public void doPost (HttpServletRequest req, HttpServletResponse resp)
          throws ServletException, IOException
        {
          doGet (req, resp);
        }

      }
 

Note:

with your assigned port number.


Extracting Parameters in a Servlet

Next, let us create an HTML Form, and have a servlet pick up the Form data entered by the user.

First, an HTML with a form:

    <html>
    <head><title>Test Post</title>
    <body>
       <form action="http://localhost:8502/servlets/Testform" method="post">
       Enter a string: <input type="text" name="param1">
       And then press "Go": <input type="submit" value="Go">
       </form>
    </body>
    </html>
  

Next, the TestForm.java servlet: (source)

       import javax.servlet.*;
       import javax.servlet.http.*;
       import java.io.*;
       import java.util.*;

       public class TestForm extends HttpServlet {

         public void doPost (HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException
         {
           // Set the content type of the response.
           resp.setContentType ("text/html");

           // Create a PrintWriter to write the response.
           java.io.PrintWriter out = new PrintWriter (resp.getOutputStream());

           // The first part of the response.
           out.println ("");
           out.println (" Test ");
           out.println ("");

           // Now get the parameters and output them back.
           out.println ("Request parameters: ");
           Enumeration e = req.getParameterNames();
           while (e.hasMoreElements()) {
             String name = (String) e.nextElement();
             String value = req.getParameter (name);
             if (value != null)
               out.println ("
  • name=[" + name + "] value=[" + value + "]"); else out.println ("
  • name=[" + name + "] did not have a value"); } // Last part. out.println (""); out.println (""); out.close(); } public void doGet (HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost (req, resp); } }
  • Note: