Abaixo, o servlet para demonstrar o uso das interfaces:

package br.aiec;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;

import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

public class RequestResponseDemoServlet implements Servlet {

    @Override
    public ServletConfig getServletConfig() {
        return null;
    }

    @Override
    public String getServletInfo() {
        return "Programação WEB - AIEC - Requisição";
    }

    @Override
    public void init(ServletConfig arg0) throws ServletException {

    }

    @Override
    public void service(ServletRequest request, ServletResponse response)
            throws ServletException, IOException {

        //Adicionando um atributo a requisição
        request.setAttribute("disciplina", "Programação WEB");
        
        //Obtendo a referência para escrever a resposta ao cliente
        PrintWriter out = response.getWriter();

        out.println("SERVIDOR\n");
        out.println("IP: " + request.getLocalAddr());
        out.println("PORTA: " + request.getLocalPort());

        out.println("\n\nCLIENTE\n");
        out.println("IP: " + request.getRemoteAddr());
        out.println("PORTA: " + request.getRemotePort());
        out.println("CHARACTER ENCODING: " + request.getCharacterEncoding());
        out.println("CONTENT TYPE: " + request.getContentType());
        out.println("CONTENT LENGTH: " + request.getContentLength());
        out.println("LOCALE: " + request.getLocale());

        Enumeration<String> parametros = request.getParameterNames();
        out.println("\n\nPARÂMETROS NOME/VALOR");
        while (parametros.hasMoreElements()) {
            out.println("--------------------------------");

            String paramNome = (String) parametros.nextElement();

            out.println("NOME: " + paramNome);
            out.println("VALOR: " + request.getParameter(paramNome));
        }
        
        Enumeration<String> atributos = request.getAttributeNames();
        out.println("\n\nATRIBUTOS NOME/VALOR");
        while (atributos.hasMoreElements()) {
            out.println("--------------------------------");

            String attrNome = (String) atributos.nextElement();

            out.println("NOME: " + attrNome);
            out.println("VALOR: " + request.getAttribute(attrNome));
        }
    }

    @Override
    public void destroy() {

    }
}
Copyright © 2014 AIEC.