Interface javax.servlet.http.HttpServletRequest dipakai untuk membuat sebuah objek request yang dikirimkan oleh client melalui web browser. Object ini dibuat oleh servlet-container, kemudian oleh method service() akan dikirimkan sebagai parameter kepada method doGet(), doPost() dan method lainnya.

Nah sekarang saya akan menunjukkan beberapa method yang sering digunakan, yang berada di dalam interface HttpServletRequest.

  • getMethod()
    Fungsi getMethod() adalah untuk mengambil jenis method HTTP yang digunakan. Nilainya bisa berupa get, post, put, dll.
  • getRequestURI()
    Fungsi getRequestURI() adalah untuk mengambil URL yang dimulai setelah namahost:port/ sampai sebelum nama parameter.
  • getRequestURL()
    Fungsi getRequestURL() adalah untuk mengambil URL.
  • getProtocol()
    Fungsi getProtocol() adalah untuk mengambil nama dan versi protokol yang digunakan.
  • getRemoteAddr()
    Fungsi getRemoteAddr() adalah untuk mengambil alamat IP client.
  • getRemotePort()
    Fungsi getRemotePort() adalah untuk mengambil nomor port client.
  • getServerName()
    Fungsi getServerName() adalah untuk mengambil nama host dari server.
  • getServerPort()
    Fungsi getServerPort() adalah untuk mengambil nomor port server.
  • getServletPath()
    Fungsi getServletPath() adalah untuk mengambil URL yang memanggil servlet, dimulai dari karakter ‘/’.
  • getContentType()
    Fungsi getContentType() adalah untuk mengambil jenis MIME(Multipurpose Internet Mail Extension).
  • getHeaderNames()
    Fungsi getHeaderNames() adalah untuk mengambil nama2 header yang berada di object request.
  • getHeader()
    Fungsi getHeader() adalah untuk mengambil nilai dari suatu header.
  • getParameter()
    Fungsi getParameter() adalah untuk mengambil nilai parameter yang dikirimkan oleh client ke servlet.
  • getParameterName()
    Fungsi getParameterName() adalah untuk mengambil nama dari semua parameter yang dikirimkan oleh client.
  • getParameterValues
    Fungsi getParameterValues() adalah untuk mengambil nilai dari parameter yang memiliki multiple-value (misalnya komponen checkbox).

Langsung saja buat new Java Web Project kalian menggunakan netbeans. Lalu pada file index.jsp ubah menjadi seperti ini

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <form method="post" action="doServlet.do">
            <table border="1">
                <tr>
                    <td>Nama</td>
                    <td><input type="text" name="nama" id="nama"></td>
                </tr>
                <tr>
                    <td>Umur</td>
                    <td><input type="text" name="umur" id="umur"></td>
                </tr>
                <tr>
                    <td>Bahasa Pemrograman</td>
                    <td>
                        <input type="checkbox" name="bahasa" value="C">C <br>
                        <input type="checkbox" name="bahasa" value="C++">C++ <br>
                        <input type="checkbox" name="bahasa" value="Java">Java <br>
                        <input type="checkbox" name="bahasa" value="JSP">JSP <br>
                        <input type="checkbox" name="bahasa" value="VB6">VB6 <br>
                        <input type="checkbox" name="bahasa" value="VB.Net">VB.Net <br>
                        <input type="checkbox" name="bahasa" value="PHP">PHP <br>
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        <input type="submit" value="OK">
                    </td>
                </tr>
            </table>
        </form>
    </body>
</html>

Kemudian buat sebuah class ServletAction berikut

package com.maniakjava.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ServletAction extends HttpServlet
{
    public void doPost(HttpServletRequest request, HttpServletResponse response)
	            throws ServletException, IOException
    {
        response.setContentType("text/html; charset=UTF-8");
        PrintWriter out = response.getWriter();

        out.print("getMethod : " + request.getMethod() + "<br>");
        out.print("getRequestURI : " + request.getRequestURI() + "<br>");
        out.print("getRequestURL : " + request.getRequestURL() + "<br>");
        out.print("getProtocol : " + request.getProtocol() + "<br>");
        out.print("getRemoteAddr : " + request.getRemoteAddr() + "<br>");
        out.print("getRemotePort : " + request.getRemotePort() + "<br>");
        out.print("getServerName : " + request.getServerName() + "<br>");
        out.print("getServerPort : " + request.getServerPort() + "<br>");
        out.print("getServletPath : " + request.getServletPath() + "<br>");
        out.print("getContentType : " + request.getContentType() + "<br><br>");

        Enumeration headerNames = request.getHeaderNames();
        while(headerNames.hasMoreElements())
        {
            String header = (String) headerNames.nextElement();
            out.print(header + " : " + request.getHeader(header) + "<br>");
        }

        out.print("<br>nama : " + request.getParameter("nama") + "<br>");
        out.print("umur : " + request.getParameter("umur") + "<br><br>");

        Enumeration paramName =  request.getParameterNames();
        while(paramName.hasMoreElements())
        {
            String name = (String) paramName.nextElement();
            out.println("nama parameter : " + name + "<br>");
        }

        String allValues[] = request.getParameterValues("bahasa");
        for(int i=0; i<allValues.length; i++)
        {
            out.println("bahasa ke - " + (i+1) + " = " + allValues[i] + "<br>");
        }

    }
}
 

Jangan lupa untuk daftarkan class di atas di web.xml

 <servlet>
        <servlet-name>MyServlet</servlet-name>
        <servlet-class>com.maniakjava.servlet.ServletAction</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>MyServlet</servlet-name>
        <url-pattern>/doServlet.do</url-pattern>
    </servlet-mapping> 

Selesai, kalian tinggal menjalankan programnya. Jika dijalankan tampilan awalnya akan menjadi seperti ini
Jika disubmit maka tampilannya akan menjadi seperti ini

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s