![Page 1: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/1.jpg)
1
Servlet + JSP
Prof. Alexandre Monteiro
Recife
![Page 2: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/2.jpg)
Contatos
Prof. Guilherme Alexandre Monteiro Reinaldo
Apelido: Alexandre Cordel
E-mail/gtalk: [email protected]
Site: http://www.alexandrecordel.com.br/fbv
Celular: (81) 9801-1878
![Page 3: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/3.jpg)
Fachada + Singleton
(DADOS) (VIEW)
(CONTROLLER)
MODEL(Objet
o)
Browser
JSP
JAVA
JAVA
SQL
HIBERNATE HQL
Linguagens
MODEL(Objet
o)
TABELA(Registr
o)
Mapeamento Objeto-
Relacional
Evolução dos Dados
(MODEL)
Fachada
![Page 4: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/4.jpg)
Servlets e Formulários HTML
Podemos enviar dados de formulários HTML (em uma requisição HTTP) para que Servlets possam processá-los e/ou submetam uma resposta HTTP;
A classe HttpServletRequest oferece funções para a captura de parâmetros de formulários HTML;
![Page 5: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/5.jpg)
Servlets e Formulários HTML
Exemplo: Vamos criar um formulário HTML que receberá dois números. Tais dados serão enviados para um Servlet que irá efetuar operações matemáticas com os mesmos:
SERVLET QUE RECEBERÁ OS DADOS
![Page 6: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/6.jpg)
Servlets e Formulários HTML (continuação) Agora codificamos o Servlet :
FUNÇÃO PARA OBTER OS DADOS DE FORMULÁRIO
![Page 7: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/7.jpg)
Servlets e Formulários HTML
Através do método getParameter(“campo”) da classe HttpServletRequest podemos obter o valor de um determinado campo de formulário;
No parâmetro desta função, inserimos o mesmo nome de campo utilizado no formulário HTML que submeteu os dados;
O valor retornado por está função será um dado do tipo String.
Para atribuir tal valor a uma variável de outro tipo, devemos efetuar uma conversão;
![Page 8: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/8.jpg)
Servlets e Formulários HTML
Exercício – Crie uma página HTML que contém o formulário abaixo. Em seguida, faça um Servlet que gere uma página HTML que apresente o conteúdo de cada campo:
<form action=“testeServlet” method=“post”>
<input type=“text” name=“nome” /><br/>
<input type=“text” name=“rg” /><br/>
<input type=“text” name=“cpf” /><br/>
<input type=“Submit” value=“Enviar” />
</form>
![Page 9: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/9.jpg)
Java Server Pages (JSP)
Tecnologia Java utilizada no desenvolvimento de aplicações Web;
JSP foi lançada durante a época em que a tecnologia Servlet ganhou popularidade como uma das maiores tecnologias para desenvolvimento Web;
JSP não substitui os Servlets, mas estendem suas funcionalidades;
É comum o uso de Servlets e JSP’s juntos;
![Page 10: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/10.jpg)
Java Server Pages (JSP)
Scripts JSP são similares a PHP, por exemplo;
A tecnologia JSP foi criada para contornar algumas limitações dos Servlets:
•Codificação extensa;
•A lógica da aplicação “se mistura” com a formatação de conteúdo. Ex.:
![Page 11: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/11.jpg)
Java Server Pages (JSP)
Uma página JSP pode tratar a geração de conteúdo, deixando o Servlet responsável apenas pela lógica de aplicação;
Vantagens da tecnologia JSP:
•Estende a tecnologia Servlet, herdando suas vantagens;
•É portável;
•É escalável;
![Page 12: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/12.jpg)
Como funciona uma página JSP
CLIENTE(Aplicação,
Applet Java, etc.)
WEB Container
Servidor J2EE
JSP Container
Página JSP
Conteúdo Estático
Requisição HTTP
Página JSP + processamento
Servlet Container
SERVLET
![Page 13: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/13.jpg)
Como funciona uma página JSP Uma página JSP consiste em uma página HTML com
alguns elementos especiais (tags) que conferem o caráter dinâmico da página;
Código JSP é delimitado entre <% e %> (em PHP, delimitávamos o código com <?php e ?>;
Tais elementos podem tanto realizar um processamento por si, como podem recuperar o resultado do processamento realizado em um Servlet;
![Page 14: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/14.jpg)
Exemplo
<!--página JSP simples que imprime o endereço IP de uma máquina-->
<HTML>
<BODY>
O seu endereço IP é <%=request.getRemoteAddr() %>
</BODY>
</HTML>
![Page 15: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/15.jpg)
JSP Containers
Os JSP Contaneirs mais populares da atualidade:
•Apache Tomcat;
•GlassFish;
![Page 16: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/16.jpg)
O que precisaremos para criar e executar Scripts JSP? Adotaremos o NetBeans IDE:
•NetBeans IDE 6.9.1- http://download.netbeans.org/netbeans/6.9.1/final/bundles/
netbeans-6.9.1-ml-windows.exe- Esta versão já vem com o JSP Container GlassFish;- Não é necessária qualquer configuração de servidor;- Bibliotecas Java utilizadas, parâmetros de função necessários,
além de outros códigos úteis para a produção de JSP já são automaticamente inseridos em nossos projetos;
![Page 17: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/17.jpg)
Meu primeiro Script JSP
Execute o NetBeans IDE;
Clique na opção de menu Arquivo / Novo projeto... (Teclas de atalho: Ctrl + Shift + N);
Na janela apresentada em seguida, em Categorias, selecione a opção Java Web; Em Projetos, selecione a opção Aplicação Web;
Clique sobre o botão Próximo;
![Page 18: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/18.jpg)
Meu primeiro Script JSP
![Page 19: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/19.jpg)
Meu primeiro Script JSP
Na próxima tela, em Nome do projeto, digite o nome da sua aplicação Web Java (sem caracteres especiais e espaços);
Mantenha os demais parâmetros padrão de projeto;
Clique em Próximo;
![Page 20: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/20.jpg)
Meu primeiro Script JSP
![Page 21: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/21.jpg)
Meu primeiro Script JSP
Agora, na próxima tela, definiremos o JSP Container a ser utilizado pela aplicação. Em Servidor, selecione Domínio do Personal Tomcat ou GlassFish;
Mantenha os demais parâmetros padrão de projeto;
Clique em Finalizar;
![Page 22: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/22.jpg)
Meu primeiro Script JSP
![Page 23: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/23.jpg)
Meu primeiro Script JSP
No painel Projeto, localizado ao lado da área de edição de código, expanda a pasta Páginas Web;
Clique duas vezes sobre o arquivo index.jsp;
Neste arquivo (gerado automaticamente, já com conteúdo HTML), iremos inserir nossos scripts JSP;
Vamos digitar o script exemplo apresentado anteriormente para testá-lo;
![Page 24: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/24.jpg)
Meu primeiro Servlet
![Page 25: 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n E-mail/gtalk: alexandrecordel@gmail.comalexandrecordel@gmail.com](https://reader035.vdocuments.pub/reader035/viewer/2022070311/552fc15e497959413d8e53c0/html5/thumbnails/25.jpg)
Meu primeiro Servlet
Executando o script:
•Para executar o script (caso não exista erros), deveremos utilizar a tecla de atalho F6;
•Também podemos clicar com o botão direito sobre o arquivo de script demonstrado no painel de Projeto, para então clicar em Executar arquivo;
•Também podemos acessar a opção de menu Executar / Executar arquivo;
•O navegador padrão será executado, demonstrando a saída do script implementado;