1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro...

25
1 Servlet + JSP Prof. Alexandre Monteiro Recife

Transcript of 1 Servlet + JSP Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro...

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.

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.

Contatos

Prof. Guilherme Alexandre Monteiro Reinaldo

Apelido: Alexandre Cordel

E-mail/gtalk: [email protected]

[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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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;