Escolar Documentos
Profissional Documentos
Cultura Documentos
Objetivos
Compreender conceitos bsicos de sistemas web (requisies, resposta, seo, parmetros, continer web, etc); Conhecer a API Servlets 3.1; Conhecer as anotaes para mapeamento dos Servlets; Conhecer o ciclo de vida de um Servlet; Implementar um Servlet Hello World; Aprender a manipular as requisies dos usurios; Aprender a manipular as respostas aos usurios; Aprender a manipular as sees dos usurios; Trabalhar com o contexto da aplicao; Aprender a filtrar as requisies e respostas;
Sistemas Web
So sistemas hospedados em servidores na Internet e que oferecem servios, capturam informaes de usurios e geram informaes para as empresas.
Sistemas Web
Em outras palavras, so sistemas que utilizam tecnologias voltadas para a disponibilizao de cdigo fonte consumido dinamicamente utilizando padres e tecnologias da Internet para a atender a clientes como browsers e aplicaes em dispositivos mveis.
1. http://www.folhadosertao.com.br/portal/noticia.php?page=noticiaCompleta&id_noticia=21210
Requisio
Requisio
Requisio
2. Quando os dados da requisio so recebidos, a aplicao realiza o processamento destes, pode ou no efetuar um acesso ao BD, gera dinamicamente o contedo e envia-o de como resultado da solicitao.
http://www.folhadosertao.com.br/portal/noticia.php?page=noticiaCompleta&id_noticia=21210
Introduo
Conjunto de classes Java que estendem a capacidade dos servidores que hospedam aplicaes desenvolvidas pensando no modelo request-response.
A API 3.1 trouxe como novidade a utilizao de anotations para mapear os recursos afim de minimizar os esforos dispendidos na configurao por meio de XML.
Caractersticas
Os pacotes javax.servlet and javax.servlet.http possuem as as interfaces e classes para escrever servlets;
Todos os servlets devem implementar a interface Servlet que define os mtodos do ciclo de vida dos mesmos; A classe HttpServlet prov mtodos, como doGet e doPost, para manipular solicitaes utilizando o protocolo http. possvel atender a solicitaes de outros protocolos utilizando ou estendendo a classe GenericServlet.
O que um Servlet?
O que um Servlet?
Componentes escritos na linguagem de programao Java que reside do lado servidor atendendo s solicitaes dos clientes.
Isso pode incluir: acesso a bancos de dados, repasse da requisio para outros componentes, gerao de cdigo html para o cliente (browsers), gerao de contedo explcito (pdfs, imagens, planilhas de excel, etc) para o cliente (browsers), manipulao de seo, leitura de cookies entre outras tarefas.
Hello World!!
E as anotations?
@WebServlet: Mapeia uma url para um servlet. Um servlet pode est mapeado para atender requisies de vrias urls. O valor padro um nome para a url a ser interceptada. Quando mais de um parmetro for especificado para a anotation, as urls devem ser mapeadas utilizando o atributo
urlPatterns
Ex:
E as anotations?
@WebInitParam: Utilizada em servlets e filtros para especificar parmetros de inicializao.
Ex:
Atendendo requisies
Ex:
http:localhost:8080/app01/hello
Manipulando a requisio
A requisio manipulada utilizando-se um objeto da classe javax.servlet.http.ServletRequest; O objeto que representa a requisio instanciado pelo prprio container e repassado aos mtodos de servio (doGet, doPost, etc...) do servlet como parametro. Os parametros vindos na requisio so sempre objetos do tipo String; No possvel adicionar ou remover parmetros utilizando esse objeto.
getParameterNames()
Retorna um enumeration de objetos String contendo os nomes dos parmetros disponveis na requisio;
getSession()
Retorna a sesso atual associada com a requisio atual, ou se a requsio no tem uma sesso , cria uma.
getAttribute(String name)
Retorna o valor do atributo designado por name como um Object, ou null se ele no existe;
getInputStream()
Recupera o corpo ServletInputStream da requisio como dados binrios usando um
Prtica I
1 2 3 4 5 6 Crie um novo projeto web denominado cupido; Crie uma classe no pacote br.com.cupido.servlets chamada ServletCupido; Diga para a classe ServletCupido estender a classe HttpServlet; Mapeie o servlet cupido para a url /cupido; Sobrescreva o mtodo doGet da classe HttpServlet; Crie uma pgina html com a seguinte mensagem:
Abaixo dessa mensagem deve vir um formulario com o campo de leitura do nome da pessoa que quer conhec-lo (la)
7 - O formulrio html deve apontar para o servlet cupido. 8 - No mtodo doGet do servlet, leia o valor enviado do formulrio e exiba a seguinte mensagem: Ol <nomeLidoDoFormulario>! Prazer em conhec-lo (la). Estou solteiro(a) e voc ? No? Droga!!!!