JSP & Servlets
Recuperando parâmetros
 Repassando atributos
Passando valores no form
Recuperando no Servlet
Enviando e recuperando o valor de
                            parâmetro
    getParameter(“nomeDoParametro”):String
        Método do HttpServletRequest

        Informe o nome de um parâmetro vindo de uma

         requisição
            E obtenha o valor(String) que o usuário informou

 No HTML (Visão)


                             No Servlet (Controle
Exemplo no Servlet
public class SelecaoCerveja extends HttpServlet {
  public void doPost(HttpServletRequest request,
                  HttpServletResponse response)
      throws IOException {

        response.setContentType(“text/html”);
        PrintWriter out = response.getWriter();

        String c = request.getParameter(“cor”);

        out.println(“<h1>Cervejas sugeridas</h1><br/>”);
        out.println(“<br/>Voce escolheu a cor ” + c);
    }
}
Resumindo...
<form method=“POST” action=“selecionarCerveja.do”>
  Selecione as características da cerveja<p>
  <select name=“cor” size=“1”>
    <option>Clara</option>
    <option>Escura</option>
  </select>
  <input type=“submit”/>
</form>



public void doPost(HttpServletRequest request,
                   HttpServletResponse response)
    throws IOException, ServletException {
  String colorParam = request.getParameter(“cor”);
}
Enviando e recuperando os valores
          de     parâmetros simples

<form method=“POST” action=“selecionarCerveja.do”>
  Selecione as características da cerveja<p>
  COR:
  <select name=“cor” size=“1”>
    <option>Clara</option>
    <option>Escura</option>
  </select>
  TIPO
 <select name=“tipo” size=“1”>
    <option>Garrafa</option>
    <option>LongNeck</option>
  </select>
  <input type=“submit”/>
</form>
Enviando e recuperando os valores
           de     simples parâmetro

public void doPost(HttpServletRequest request,
                    HttpServletResponse response)
     throws IOException, ServletException {
  String colorParam = request.getParameter(“cor”);
  String tipoParam = request.getParameter(“tipo”);
   //...
}
Recuperando valores de
checkboxes
Enviando e recuperando o valor de
                         de checkboxes
    getParameterValues(“nomeDoParametro”):String[]
        Método do HttpServletRequest

        Informe o nome de um parâmetro vindo de uma

         requisição
            E obtenha um array de String
Múltiplos Valores
                         para      parâmetro
<form method=“POST” action=“selecionarCerveja.do”>
  Selecione as características da cerveja<p>
 <input type=checkbox name=“marcas” value=“A”>A<br/>
 <input type=checkbox name=“marcas” value=“B”>B<br/>
 <input type=checkbox name=“marcas” value=“C”>C<br/>
 <input type=checkbox name=“marcas” value=“D”>D<br/>
 <input type=“submit”/>
</form>



String[] marcas = request.getParameterValues(“marcas”);
String umaMarca = request.getParameterValues(“marcas”)[0];
Passando um valor do Servlet
para a JSP
Passando um valor para JSP
    setAttribute(“nomeDoAtributo”, valor)
        Método do HttpRequest

        Configure um objeto como um atributo

              para ser recuperado através de um nome


         Obs:
              Esse valor será acessado pela JSP
Exemplo no Servlet
public class SelecaoCerveja extends HttpServlet {
  public void doPost(HttpServletRequest request,
                  HttpServletResponse response)
      throws IOException {

        String c = request.getParameter(“cor”);
        CervejaExpert ce = new CervejaExpert();
        List resultado= ce.getMarcas(c);

        request.setAttribute(“marcas”, resultado);

        RequestDispatcher rd =
           request.getRequestDispatcher(“resultado.jsp”);

        rd.forward(request,response);
    }
}
Repassando o fluxo para a
JSP: Dispatch
Repassar o fluxo para a JSP
               Preparando o Dispatch
    getRequestDispatcher(“pagina.jsp”): RequestDispatcher
       Método do HttpRequest
       Configura um objeto capaz de redirecionar o
        fluxo da aplicação para uma JSP
Repassar o fluxo para a JSP
                  repassando o fluxo
    forward(request, response)
        Método do RequestDispatcher

        Redireciona o fluxo

Java Web 4 - Servlets e JSP 2

  • 1.
    JSP & Servlets Recuperandoparâmetros Repassando atributos
  • 2.
    Passando valores noform Recuperando no Servlet
  • 3.
    Enviando e recuperandoo valor de parâmetro   getParameter(“nomeDoParametro”):String   Método do HttpServletRequest   Informe o nome de um parâmetro vindo de uma requisição   E obtenha o valor(String) que o usuário informou No HTML (Visão) No Servlet (Controle
  • 4.
    Exemplo no Servlet publicclass SelecaoCerveja extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setContentType(“text/html”); PrintWriter out = response.getWriter(); String c = request.getParameter(“cor”); out.println(“<h1>Cervejas sugeridas</h1><br/>”); out.println(“<br/>Voce escolheu a cor ” + c); } }
  • 5.
    Resumindo... <form method=“POST” action=“selecionarCerveja.do”> Selecione as características da cerveja<p> <select name=“cor” size=“1”> <option>Clara</option> <option>Escura</option> </select> <input type=“submit”/> </form> public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { String colorParam = request.getParameter(“cor”); }
  • 6.
    Enviando e recuperandoos valores de parâmetros simples <form method=“POST” action=“selecionarCerveja.do”> Selecione as características da cerveja<p> COR: <select name=“cor” size=“1”> <option>Clara</option> <option>Escura</option> </select> TIPO <select name=“tipo” size=“1”> <option>Garrafa</option> <option>LongNeck</option> </select> <input type=“submit”/> </form>
  • 7.
    Enviando e recuperandoos valores de simples parâmetro public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { String colorParam = request.getParameter(“cor”); String tipoParam = request.getParameter(“tipo”); //... }
  • 8.
  • 9.
    Enviando e recuperandoo valor de de checkboxes   getParameterValues(“nomeDoParametro”):String[]   Método do HttpServletRequest   Informe o nome de um parâmetro vindo de uma requisição   E obtenha um array de String
  • 10.
    Múltiplos Valores para parâmetro <form method=“POST” action=“selecionarCerveja.do”> Selecione as características da cerveja<p> <input type=checkbox name=“marcas” value=“A”>A<br/> <input type=checkbox name=“marcas” value=“B”>B<br/> <input type=checkbox name=“marcas” value=“C”>C<br/> <input type=checkbox name=“marcas” value=“D”>D<br/> <input type=“submit”/> </form> String[] marcas = request.getParameterValues(“marcas”); String umaMarca = request.getParameterValues(“marcas”)[0];
  • 11.
    Passando um valordo Servlet para a JSP
  • 12.
    Passando um valorpara JSP   setAttribute(“nomeDoAtributo”, valor)   Método do HttpRequest   Configure um objeto como um atributo   para ser recuperado através de um nome   Obs:   Esse valor será acessado pela JSP
  • 13.
    Exemplo no Servlet publicclass SelecaoCerveja extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { String c = request.getParameter(“cor”); CervejaExpert ce = new CervejaExpert(); List resultado= ce.getMarcas(c); request.setAttribute(“marcas”, resultado); RequestDispatcher rd = request.getRequestDispatcher(“resultado.jsp”); rd.forward(request,response); } }
  • 14.
    Repassando o fluxopara a JSP: Dispatch
  • 15.
    Repassar o fluxopara a JSP Preparando o Dispatch   getRequestDispatcher(“pagina.jsp”): RequestDispatcher   Método do HttpRequest   Configura um objeto capaz de redirecionar o fluxo da aplicação para uma JSP
  • 16.
    Repassar o fluxopara a JSP repassando o fluxo   forward(request, response)   Método do RequestDispatcher   Redireciona o fluxo