SlideShare uma empresa Scribd logo
1
CENTRO FEDERAL DE EDUCAÇÃO
    TECNOLOGICA DO RN

             AULA

             4
        Classe
   javax.servlet.http.
      HttpServlet

   Prof. Alessandro J. de Souza
2

API de Servlets


  javax.servlet         <<interface>>       <<interface>>        <<interface>>
                        ServletContext         Servlet            ServletConfig




                        <<interface>>                          <<interface>>
                        ServletRequest                        ServletResponse

                                            GenericServlet
  javax.servlet.http




                                             HttpServlet



                         <<interface>>                          <<interface>>
                       HttpServletRequest                    HttpServletResponse




                         HttpSession           Cookie
3

Classe HttpServlet

 Estende a classe GenericServlet
 Acrescenta uma série de métodos para ser
  usado, tipo:
   doGet
   doPost
   doDelete
   doOption
   doTrave
   doPut
4

Diagrama




           5: resposta da requisição
5

doGet e doPost

 doPost: usando quando Browser envia uma
  solicitação HTTP usando o método POST.
       <FORM ACTION= “/RegistroServlet” METODO= “post” >
             <INPUT TYPE= text NAME= “nome”>
             <INPUT TYPE= text NAME= “sobrenome”>
             <INPUT TYPE= submit >
       </FORM>

     Obs: também é possível usar o método GET através de um form



 doGet: usado quando o Browser envia uma
  solicitação HTTP usando o método GET.

http://maquina/myApp/RegistroServlet?nome=Antonio&sobrenome=carlos
6

Código do Servlet
import   ...
public class RegistroServlet extends HttpServlet {
  public void doGet(HttpServletRequest request,
      HttpServletResponse response)
      throws ServletException, IOException {
      response.setContentType("text/html");
      PrintWriter out = response.getWriter();
      out.println("<HTML>");
      out.println("<HEAD>");
      out.println("<TITLE>Testando o Método GET</TITLE>");
      out.println("</HEAD>");
      out.println("<BODY>");
      out.println(“O servlet recebeu uma requisição GET. " +
       “Agora, click no botão abaixo.");
      out.println("<BR>");
      out.println("<FORM METHOD=POST>");
      out.println("<INPUT TYPE=SUBMIT VALUE=Submit >");
      out.println("</FORM>");
      out.println("</BODY>");
      out.println("</HTML>");


  }                                                            Continuação ->
7

Código do Servlet
Continuação ...


 public void doPost(
        HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<HTML>");
        out.println("<HEAD>");
        out.println("<TITLE> Testando o Método POST </TITLE>");
        out.println("</HEAD>");
        out.println("<BODY>");
        out.println(“O servlet recebeu uma requisição POST.");
        out.println("</BODY>");
        out.println("</HTML>");
    }
}
8
Deployment Descriptor (web.xml)

 <?xml version="1.0" encoding="ISO-8859-1"?>
 <!DOCTYPE web-app
   PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
   "http://java.sun.com/dtd/web-app_2_3.dtd">


 <web-app>
   <servlet>
         <servlet-name> Registro </servlet-name>
         <servlet-class> RegistroServlet </servlet-class>
   </servlet>
   <servlet-mapping>
         <servlet-name> Registro </servlet-name>
         <url-pattern> /meuRegistro </url-pattern>
   </servlet-mapping>
 </web-app>
9

Revisão de HTML

 Formulários HTML
     O bloco <FORM> define a URL que receberá o formulário
      e o método a ser usado.

 <FORM ACTION="URL para onde serão enviado os dados"
 METHOD="método HTTP (pode ser GET ou POST)">
    .......... Elementos do Bloco ...........
 </FORM>



 Exemplo

        <FORM ACTION="/exemplo.html">
           <INPUT TYPE="submit“>
        </FORM>
10

Formulários HTML

 Os elementos <INPUT> possuem os
  seguintes atributo TYPE:
   Submit :Envio do formulário
   Reset    :Reinicialização do formulário
   Button :Evento programado por JavaScript (Button)


 Exemplos:
      Ok     < input type=“button” value=“Ok”>

    Enviar   < input type=“submit” value=“Enviar”>

    Limpar   < input type=“reset” value=“limpar”>
11

Formulários HTML

 Elementos <INPUT> com TYPE="text"
  podem ser usados para entrada de texto.
    þÿ           < input type=“text” name=“campo1”>

    þÿ           < input type=“text” name=“campo1” size=10>

    þÿtexto      < input type=“text” name=“campo1” value=“texto”>



 Elementos <INPUT> com
  TYPE="password" o texto digitado é
  ocultado na tela do browser.
   þÿtttt       < input type=“password” name=“senha” maxlength=4>




 Elementos <INPUT> com TYPE=“hidden"
  possiblita ocultar os campos do formulário na
        < input type=“hidden” name=“opcao” value=“salvar”>
  tela do browser.
12

Chaves booleanas

 Elementos <INPUT> com TYPE=“checkbox”
     permitem mais de uma seleção

    ASP <input type=“checkbox” name=“linguagens” value=“ASP”> ASP
    JAV
$       <input type=“checkbox” name=“linguagens” value=“JAVA” checked> JAVA
    A
    PH
$       <input type=“checkbox” name=“linguagens” value=“PHP” checked> PHP
    P



 Elementos <INPUT> com TYPE=“radio” com o
  mesmo nome, formam um grupo e apenas uma
  seleção é aceita
    AS
q       <input type=“radio” name=“linguagens” value=“PHP”> PHP
    P
    JAV
q       <input type=“radio” name=“linguagens” value=“JAVA” checked> JAVA
    A
    PH
q       <input type=“radio” name=“linguagens” value=“PHP” > PHP
    P
13

Área para entrada de texto

 Elemento <TEXTAREA> possibilita a entrada de texto
  de múltiplas linhas.

                     < textarea rows=3 cols=20>
  þÿTexto Inicial        Texto Inicial
                     </textarea>
14

Menus de seleção

 Consistem de um par de elementos tipo:
    <SELECT > define o nome da coleção
    <OPTION > define o valor que será enviado

                <select name="linguagem">
                    <option value="APS">ASP</option>
                    <option value="JAVA">JAVA</option>
                    <option value="PHP">PHP</option>
                </select>


              <select name="linguagem" size="3" multiple>
                  <option value="APS">ASP</option>
                  <option value="JAVA">JAVA</option>
                  <option value="PHP">PHP</option>
              </select>
15

Exércicio

Tarefa de Sala de aula
       Monte a aplicação exemplo da aula


Tarefa extra-classe
   1.   Faça um servlet que escreva uma pagina HTML com um
        formulário contendo cada tipo de elemento visto na aula
        de hoje.

Mais conteúdo relacionado

Mais procurados

Httpunit - Teste de interface Web com HttpUnit
Httpunit - Teste de interface Web com HttpUnitHttpunit - Teste de interface Web com HttpUnit
Httpunit - Teste de interface Web com HttpUnit
Denis L Presciliano
 
Model View Controller
Model View ControllerModel View Controller
Model View Controller
Denis L Presciliano
 
Rest Beer v2
Rest Beer v2Rest Beer v2
Rest Beer v2
Ivan Rosolen
 
Trabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiTrabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial Ii
Mateus Ramos Pereira
 
Web 2.0 e AJAX - Parte 2 / 3
Web 2.0 e AJAX - Parte 2 / 3Web 2.0 e AJAX - Parte 2 / 3
Web 2.0 e AJAX - Parte 2 / 3
David Ruiz
 
Introdução a Desenvolvimento Web
Introdução a Desenvolvimento WebIntrodução a Desenvolvimento Web
Introdução a Desenvolvimento Web
PeslPinguim
 
Te servelts
Te serveltsTe servelts
Te servelts
rafaeljrssg
 
Java script aula 10 - angularjs
Java script   aula 10 - angularjsJava script   aula 10 - angularjs
Java script aula 10 - angularjs
Cristiano Pires Martins
 
Apresentacao TCC - Rafael Felix
Apresentacao TCC - Rafael FelixApresentacao TCC - Rafael Felix
Apresentacao TCC - Rafael Felix
Rafael Felix da Silva
 
PHP FrameWARks - FISL
PHP FrameWARks - FISLPHP FrameWARks - FISL
PHP FrameWARks - FISL
Marcio Albuquerque
 
02 - Fundamentos de Servlets
02 - Fundamentos de Servlets02 - Fundamentos de Servlets
02 - Fundamentos de Servlets
Marcio Marinho
 
Ajax como comecar
Ajax como comecarAjax como comecar
Ajax como comecar
Igor Ferreira
 
uma história sobre testes de API
uma história sobre testes de APIuma história sobre testes de API
uma história sobre testes de API
Samuel Lourenço
 
Python 07
Python 07Python 07
Python 07
Bruno Catão
 
Aula 10 - Trabalhando com Templates - Programação Web
Aula 10  - Trabalhando com Templates - Programação WebAula 10  - Trabalhando com Templates - Programação Web
Aula 10 - Trabalhando com Templates - Programação Web
Dalton Martins
 
Java script aula 09 - JQuery
Java script   aula 09 - JQueryJava script   aula 09 - JQuery
Java script aula 09 - JQuery
Cristiano Pires Martins
 
Introdução à MEAN Stack
Introdução à MEAN StackIntrodução à MEAN Stack
Introdução à MEAN Stack
Bruno Catão
 
TDDing com Javascript
TDDing com JavascriptTDDing com Javascript
TDDing com Javascript
Alexandre Gomes
 
11 Java Script - Exemplos com eventos
11 Java Script - Exemplos com eventos11 Java Script - Exemplos com eventos
11 Java Script - Exemplos com eventos
Centro Paula Souza
 
Python 06
Python 06Python 06
Python 06
Bruno Catão
 

Mais procurados (20)

Httpunit - Teste de interface Web com HttpUnit
Httpunit - Teste de interface Web com HttpUnitHttpunit - Teste de interface Web com HttpUnit
Httpunit - Teste de interface Web com HttpUnit
 
Model View Controller
Model View ControllerModel View Controller
Model View Controller
 
Rest Beer v2
Rest Beer v2Rest Beer v2
Rest Beer v2
 
Trabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiTrabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial Ii
 
Web 2.0 e AJAX - Parte 2 / 3
Web 2.0 e AJAX - Parte 2 / 3Web 2.0 e AJAX - Parte 2 / 3
Web 2.0 e AJAX - Parte 2 / 3
 
Introdução a Desenvolvimento Web
Introdução a Desenvolvimento WebIntrodução a Desenvolvimento Web
Introdução a Desenvolvimento Web
 
Te servelts
Te serveltsTe servelts
Te servelts
 
Java script aula 10 - angularjs
Java script   aula 10 - angularjsJava script   aula 10 - angularjs
Java script aula 10 - angularjs
 
Apresentacao TCC - Rafael Felix
Apresentacao TCC - Rafael FelixApresentacao TCC - Rafael Felix
Apresentacao TCC - Rafael Felix
 
PHP FrameWARks - FISL
PHP FrameWARks - FISLPHP FrameWARks - FISL
PHP FrameWARks - FISL
 
02 - Fundamentos de Servlets
02 - Fundamentos de Servlets02 - Fundamentos de Servlets
02 - Fundamentos de Servlets
 
Ajax como comecar
Ajax como comecarAjax como comecar
Ajax como comecar
 
uma história sobre testes de API
uma história sobre testes de APIuma história sobre testes de API
uma história sobre testes de API
 
Python 07
Python 07Python 07
Python 07
 
Aula 10 - Trabalhando com Templates - Programação Web
Aula 10  - Trabalhando com Templates - Programação WebAula 10  - Trabalhando com Templates - Programação Web
Aula 10 - Trabalhando com Templates - Programação Web
 
Java script aula 09 - JQuery
Java script   aula 09 - JQueryJava script   aula 09 - JQuery
Java script aula 09 - JQuery
 
Introdução à MEAN Stack
Introdução à MEAN StackIntrodução à MEAN Stack
Introdução à MEAN Stack
 
TDDing com Javascript
TDDing com JavascriptTDDing com Javascript
TDDing com Javascript
 
11 Java Script - Exemplos com eventos
11 Java Script - Exemplos com eventos11 Java Script - Exemplos com eventos
11 Java Script - Exemplos com eventos
 
Python 06
Python 06Python 06
Python 06
 

Destaque

Practica de almacenamiento en excel
Practica de almacenamiento en excelPractica de almacenamiento en excel
Practica de almacenamiento en excel
Bryan Artic Lascano
 
Diagrama
DiagramaDiagrama
Competencias y resultados
Competencias y resultadosCompetencias y resultados
Competencias y resultados
TatianaBernal03
 
Social market TAU - Huesca
Social market TAU - HuescaSocial market TAU - Huesca
Social market TAU - Huesca
Tabgha
 
Despensa Solidaria Tabgha - Vitoria
Despensa Solidaria Tabgha -  VitoriaDespensa Solidaria Tabgha -  Vitoria
Despensa Solidaria Tabgha - Vitoria
Tabgha
 
Recapitulación 3
Recapitulación  3Recapitulación  3
Recapitulación 3
vesparum
 
Avisos
AvisosAvisos
Avisos
compucis12
 
Evidencia sesion 5
Evidencia sesion 5Evidencia sesion 5
Evidencia sesion 5
dosauro
 
Web quest
Web questWeb quest
Web quest
Romina Clavijo
 
Religión
ReligiónReligión
Propuesta de promoción a multinacionales en Colombia
Propuesta de promoción a multinacionales en ColombiaPropuesta de promoción a multinacionales en Colombia
Propuesta de promoción a multinacionales en Colombia
colombiancompanies64
 
MY LEFT FOOT
MY LEFT FOOTMY LEFT FOOT
MY LEFT FOOT
karem andrea
 
Tabla evaluación de recursos web (1)
Tabla evaluación de recursos web (1)Tabla evaluación de recursos web (1)
Tabla evaluación de recursos web (1)
Kary Acosta
 
Wordpresspunto
WordpresspuntoWordpresspunto
Wordpresspunto
Daniel Levy
 
cgcgvgfg
cgcgvgfgcgcgvgfg
Manual Para Crear Un Blog 2009
Manual Para Crear Un Blog 2009Manual Para Crear Un Blog 2009
Manual Para Crear Un Blog 2009
maegar
 
Asociación Resurgir - Huelva
Asociación Resurgir -  HuelvaAsociación Resurgir -  Huelva
Asociación Resurgir - Huelva
Tabgha
 

Destaque (20)

Practica de almacenamiento en excel
Practica de almacenamiento en excelPractica de almacenamiento en excel
Practica de almacenamiento en excel
 
history_data
history_datahistory_data
history_data
 
Diagrama
DiagramaDiagrama
Diagrama
 
Competencias y resultados
Competencias y resultadosCompetencias y resultados
Competencias y resultados
 
Social market TAU - Huesca
Social market TAU - HuescaSocial market TAU - Huesca
Social market TAU - Huesca
 
Despensa Solidaria Tabgha - Vitoria
Despensa Solidaria Tabgha -  VitoriaDespensa Solidaria Tabgha -  Vitoria
Despensa Solidaria Tabgha - Vitoria
 
Recapitulación 3
Recapitulación  3Recapitulación  3
Recapitulación 3
 
Avisos
AvisosAvisos
Avisos
 
Evidencia sesion 5
Evidencia sesion 5Evidencia sesion 5
Evidencia sesion 5
 
Web quest
Web questWeb quest
Web quest
 
Religión
ReligiónReligión
Religión
 
Propuesta de promoción a multinacionales en Colombia
Propuesta de promoción a multinacionales en ColombiaPropuesta de promoción a multinacionales en Colombia
Propuesta de promoción a multinacionales en Colombia
 
Bleach
BleachBleach
Bleach
 
MY LEFT FOOT
MY LEFT FOOTMY LEFT FOOT
MY LEFT FOOT
 
TEORICOS
TEORICOSTEORICOS
TEORICOS
 
Tabla evaluación de recursos web (1)
Tabla evaluación de recursos web (1)Tabla evaluación de recursos web (1)
Tabla evaluación de recursos web (1)
 
Wordpresspunto
WordpresspuntoWordpresspunto
Wordpresspunto
 
cgcgvgfg
cgcgvgfgcgcgvgfg
cgcgvgfg
 
Manual Para Crear Un Blog 2009
Manual Para Crear Un Blog 2009Manual Para Crear Un Blog 2009
Manual Para Crear Un Blog 2009
 
Asociación Resurgir - Huelva
Asociación Resurgir -  HuelvaAsociación Resurgir -  Huelva
Asociación Resurgir - Huelva
 

Semelhante a Http Servlet

Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1
Eduardo Mendes
 
servlet-requisicoes
servlet-requisicoesservlet-requisicoes
servlet-requisicoes
Fábio Nogueira de Lucena
 
Java Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsJava Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e Servlets
Eduardo Mendes
 
Servlets
ServletsServlets
Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6
danielfcampos
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
Helder da Rocha
 
Curso de Servlets
Curso de ServletsCurso de Servlets
Curso de Servlets
Marcelo Gonçalves
 
servlet-introducao
servlet-introducaoservlet-introducao
servlet-introducao
Fábio Nogueira de Lucena
 
Introdução ao desenvolvimento web com Java
Introdução ao desenvolvimento web com JavaIntrodução ao desenvolvimento web com Java
Introdução ao desenvolvimento web com Java
FellipeFonseca
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Thyago Maia
 
Testes em Aplicações Web com Cactus
Testes em Aplicações Web com CactusTestes em Aplicações Web com Cactus
Testes em Aplicações Web com Cactus
Denis L Presciliano
 
Java e Cloud Computing
Java e Cloud ComputingJava e Cloud Computing
Java e Cloud Computing
Mario Jorge Pereira
 
Javaone Brazil 2012: Integrando Ext JS 4 com Java EE
Javaone Brazil 2012: Integrando Ext JS 4 com Java EEJavaone Brazil 2012: Integrando Ext JS 4 com Java EE
Javaone Brazil 2012: Integrando Ext JS 4 com Java EE
Loiane Groner
 
Cactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta CactusCactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta Cactus
Denis L Presciliano
 
Resumo Anotacoes Certificacao SCWCD 5
Resumo Anotacoes Certificacao SCWCD 5Resumo Anotacoes Certificacao SCWCD 5
Resumo Anotacoes Certificacao SCWCD 5
Gilberto Holms
 
Servlets e jsp
Servlets e jspServlets e jsp
Servlets e jsp
Alan Oliveira
 
Introdução aos Servlets e JSPs
Introdução aos Servlets e JSPsIntrodução aos Servlets e JSPs
Introdução aos Servlets e JSPs
Luiz Ricardo Silva
 
Servlets e JSP
Servlets e JSPServlets e JSP
Servlets e JSP
Glaucio Scheibel
 
Sistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebSistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias Web
Elenilson Vieira
 
Curso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationCurso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web Application
Mario Sergio
 

Semelhante a Http Servlet (20)

Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1
 
servlet-requisicoes
servlet-requisicoesservlet-requisicoes
servlet-requisicoes
 
Java Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsJava Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e Servlets
 
Servlets
ServletsServlets
Servlets
 
Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
 
Curso de Servlets
Curso de ServletsCurso de Servlets
Curso de Servlets
 
servlet-introducao
servlet-introducaoservlet-introducao
servlet-introducao
 
Introdução ao desenvolvimento web com Java
Introdução ao desenvolvimento web com JavaIntrodução ao desenvolvimento web com Java
Introdução ao desenvolvimento web com Java
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
 
Testes em Aplicações Web com Cactus
Testes em Aplicações Web com CactusTestes em Aplicações Web com Cactus
Testes em Aplicações Web com Cactus
 
Java e Cloud Computing
Java e Cloud ComputingJava e Cloud Computing
Java e Cloud Computing
 
Javaone Brazil 2012: Integrando Ext JS 4 com Java EE
Javaone Brazil 2012: Integrando Ext JS 4 com Java EEJavaone Brazil 2012: Integrando Ext JS 4 com Java EE
Javaone Brazil 2012: Integrando Ext JS 4 com Java EE
 
Cactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta CactusCactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta Cactus
 
Resumo Anotacoes Certificacao SCWCD 5
Resumo Anotacoes Certificacao SCWCD 5Resumo Anotacoes Certificacao SCWCD 5
Resumo Anotacoes Certificacao SCWCD 5
 
Servlets e jsp
Servlets e jspServlets e jsp
Servlets e jsp
 
Introdução aos Servlets e JSPs
Introdução aos Servlets e JSPsIntrodução aos Servlets e JSPs
Introdução aos Servlets e JSPs
 
Servlets e JSP
Servlets e JSPServlets e JSP
Servlets e JSP
 
Sistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebSistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias Web
 
Curso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationCurso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web Application
 

Último

Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 

Último (6)

Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 

Http Servlet

  • 1. 1 CENTRO FEDERAL DE EDUCAÇÃO TECNOLOGICA DO RN AULA 4 Classe javax.servlet.http. HttpServlet Prof. Alessandro J. de Souza
  • 2. 2 API de Servlets javax.servlet <<interface>> <<interface>> <<interface>> ServletContext Servlet ServletConfig <<interface>> <<interface>> ServletRequest ServletResponse GenericServlet javax.servlet.http HttpServlet <<interface>> <<interface>> HttpServletRequest HttpServletResponse HttpSession Cookie
  • 3. 3 Classe HttpServlet  Estende a classe GenericServlet  Acrescenta uma série de métodos para ser usado, tipo:  doGet  doPost  doDelete  doOption  doTrave  doPut
  • 4. 4 Diagrama 5: resposta da requisição
  • 5. 5 doGet e doPost  doPost: usando quando Browser envia uma solicitação HTTP usando o método POST. <FORM ACTION= “/RegistroServlet” METODO= “post” > <INPUT TYPE= text NAME= “nome”> <INPUT TYPE= text NAME= “sobrenome”> <INPUT TYPE= submit > </FORM>  Obs: também é possível usar o método GET através de um form  doGet: usado quando o Browser envia uma solicitação HTTP usando o método GET. http://maquina/myApp/RegistroServlet?nome=Antonio&sobrenome=carlos
  • 6. 6 Código do Servlet import ... public class RegistroServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<HTML>"); out.println("<HEAD>"); out.println("<TITLE>Testando o Método GET</TITLE>"); out.println("</HEAD>"); out.println("<BODY>"); out.println(“O servlet recebeu uma requisição GET. " + “Agora, click no botão abaixo."); out.println("<BR>"); out.println("<FORM METHOD=POST>"); out.println("<INPUT TYPE=SUBMIT VALUE=Submit >"); out.println("</FORM>"); out.println("</BODY>"); out.println("</HTML>"); } Continuação ->
  • 7. 7 Código do Servlet Continuação ... public void doPost( HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<HTML>"); out.println("<HEAD>"); out.println("<TITLE> Testando o Método POST </TITLE>"); out.println("</HEAD>"); out.println("<BODY>"); out.println(“O servlet recebeu uma requisição POST."); out.println("</BODY>"); out.println("</HTML>"); } }
  • 8. 8 Deployment Descriptor (web.xml) <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name> Registro </servlet-name> <servlet-class> RegistroServlet </servlet-class> </servlet> <servlet-mapping> <servlet-name> Registro </servlet-name> <url-pattern> /meuRegistro </url-pattern> </servlet-mapping> </web-app>
  • 9. 9 Revisão de HTML  Formulários HTML  O bloco <FORM> define a URL que receberá o formulário e o método a ser usado. <FORM ACTION="URL para onde serão enviado os dados" METHOD="método HTTP (pode ser GET ou POST)"> .......... Elementos do Bloco ........... </FORM>  Exemplo <FORM ACTION="/exemplo.html"> <INPUT TYPE="submit“> </FORM>
  • 10. 10 Formulários HTML  Os elementos <INPUT> possuem os seguintes atributo TYPE:  Submit :Envio do formulário  Reset :Reinicialização do formulário  Button :Evento programado por JavaScript (Button)  Exemplos: Ok < input type=“button” value=“Ok”> Enviar < input type=“submit” value=“Enviar”> Limpar < input type=“reset” value=“limpar”>
  • 11. 11 Formulários HTML  Elementos <INPUT> com TYPE="text" podem ser usados para entrada de texto. þÿ < input type=“text” name=“campo1”> þÿ < input type=“text” name=“campo1” size=10> þÿtexto < input type=“text” name=“campo1” value=“texto”>  Elementos <INPUT> com TYPE="password" o texto digitado é ocultado na tela do browser. þÿtttt < input type=“password” name=“senha” maxlength=4>  Elementos <INPUT> com TYPE=“hidden" possiblita ocultar os campos do formulário na < input type=“hidden” name=“opcao” value=“salvar”> tela do browser.
  • 12. 12 Chaves booleanas  Elementos <INPUT> com TYPE=“checkbox” permitem mais de uma seleção ASP <input type=“checkbox” name=“linguagens” value=“ASP”> ASP JAV $ <input type=“checkbox” name=“linguagens” value=“JAVA” checked> JAVA A PH $ <input type=“checkbox” name=“linguagens” value=“PHP” checked> PHP P  Elementos <INPUT> com TYPE=“radio” com o mesmo nome, formam um grupo e apenas uma seleção é aceita AS q <input type=“radio” name=“linguagens” value=“PHP”> PHP P JAV q <input type=“radio” name=“linguagens” value=“JAVA” checked> JAVA A PH q <input type=“radio” name=“linguagens” value=“PHP” > PHP P
  • 13. 13 Área para entrada de texto  Elemento <TEXTAREA> possibilita a entrada de texto de múltiplas linhas. < textarea rows=3 cols=20> þÿTexto Inicial Texto Inicial </textarea>
  • 14. 14 Menus de seleção  Consistem de um par de elementos tipo:  <SELECT > define o nome da coleção  <OPTION > define o valor que será enviado <select name="linguagem"> <option value="APS">ASP</option> <option value="JAVA">JAVA</option> <option value="PHP">PHP</option> </select> <select name="linguagem" size="3" multiple> <option value="APS">ASP</option> <option value="JAVA">JAVA</option> <option value="PHP">PHP</option> </select>
  • 15. 15 Exércicio Tarefa de Sala de aula  Monte a aplicação exemplo da aula Tarefa extra-classe 1. Faça um servlet que escreva uma pagina HTML com um formulário contendo cada tipo de elemento visto na aula de hoje.