Introdução à programação para web com Java - Módulo 03: Conceitos básicos de Java Server...

24
AULA 03 – JSP

Transcript of Introdução à programação para web com Java - Módulo 03: Conceitos básicos de Java Server...

Page 1: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

AULA 03 – JSP

Page 2: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

visão geral sobre páginas JSPConhecer o ciclo de vida de páginas JSPCompreender a sintaxe e a semântica das páginas JSP

Objetivos

Page 3: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

O que é JSP?

JavaServer Pages (JSP) é uma tecnologia baseada em servlet usada na camada WEB para apresentar conteúdo dinâmico e estático. Ela é baseada em texto e contém, em sua maioria, modelo de texto em HTML misturado com tags que especificam conteúdo dinâmico.

Page 4: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Porque JSP?

• O conteúdo HTML não estará embutido dentro de código em Java. Isto torna mais fácil sua manutenção.

• JSP são familiares para qualquer um com conhecimento de HTML isto torna fácil o desenvolvimento de páginas WEB.

• JSP têm suporte interno para o uso de componentes de software reusáveis (JavaBeans).

• Promove separação de apresentação e lógica de negócios também.

Page 5: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Ciclo de Vida

Ciclo de vida controlado pelo conteiner

• Método init – Chamado pelo conteiner do servlet uma única vez.

• Método service – Permite responder a uma solicitação do cliente.

• Método destroy – Chamado quando um servlet é destruído pelo conteiner.

Page 6: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Ciclo de Vida

Page 7: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Ciclo de Vida

Page 8: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Elementos e Modelo de Dados

Componentes de todas JavaServer Pages podem ser qualificados em duas categorias gerais:

Elementos e Modelo de dados.

Elementos são informação produzida dinamicamente.

Modelo de Dados são informação estática que são responsáveis pela apresentação.

Page 9: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Mão na massa

JSP Exemplo <HTML> <TITLE>Welcome</TITLE> <BODY> <H1>Greetings!</H1><br> Thank you for accessing our site. <br> The time is now <%= new java.util.Date()%> </BODY> </HTML>

Page 10: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Comentários

Comentários HTML <!-- não servem para comentar JSP o texto é ignorado pelo browser mas não pelo conteiner -->

Comentários JSP<%-- Texto, código Java, e HTML são ignorados pelo servidor --%>

Pode-se também usar comentários Java quando dentro de scriptlets, expressões ou declarações:<% código JSP ... /* comentário de varias linhas */// comentário de linha... código JSP %>

• Utilize <\% para ter <% na saída. • Todos os outro textos não específicos a JSP são passados para a saída da página

Page 11: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Elementos de Scripting

Scriptlets

Expressões

Declarações

Page 12: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Scriptlets

Proporcionam uma maneira de inserir diretamente pedaços de instruções Java em diferentes partes do modelo de dados e tem a seguinte forma:

São blocos de código que são executados sempre que uma página JSP é processada

Correspondem a inserção de seqüências de instruções no método _jspService() do servlet gerado

Sintaxe: <% Instruções Java; %>

Definir instruções Java entre <% e %> é o mesmo que estar codificando dentro de um método.

Page 13: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Scriptlets

Método println

<html><head><title>scriplets exemplo 1</title></head><body><% String userName="Samuka";out.println("<br /><br /> Nome do usuário: <b>" + userName + "</b>"); %></body></html>

Page 14: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Scriptlets

Comando for em scriptlet

<html><head><title>scriplets exemplo 1</title></head><body><% for (int i=0; i < 10; i++){ %>Esta linha será impressa 10 vezes<% } %></body></html>

Page 15: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Scriptlets

Comando for em scriptlet

<%! String [] nomes = {"Samuka","Aline","Clara", "José", "Helem" }; %><html> <head> <title>Página JSP</title> </head> <body bgcolor="#FFFFFF"><h1>Lista de Nomes</h1><table> <th>Nome<th><%for(int i=0; i<nomes.length; i++){%> <tr><td> <%= "nome " + (i + 1) + " " + nomes[i] %> </td></tr><% } %></table> </body></html

Page 16: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Scriptlets

Saída no browser

Page 17: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Expressões

Expressões fornecem uma maneira de inserir valores Java diretamente na saída. Quando processadas, retornam um valor que é inserido na página no lugar da expressão

Elas tem a seguinte forma:

<%= Expressão Java %>

Equivale a out.print(expressão)

Não terminar em ponto-e-vírgula

Todos os valores resultantes das expressões são convertidos em String antes de serem redirecionados à saída padrão

Page 18: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Expressões

<html> <head> <title>Página JSP</title> </head> <body bgcolor="#FFFFFF"> <%="Número aleatório: " + (int)(Math.random()*10) %> </body></html>

Page 19: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Declarações

Permitem a declaração de variáveis e métodos em uma página e são úteis para declarar:

Variáveis e métodos de instância (pertencentes ao servlet)

variáveis e métodos estáticos (pertencentes à classe do servlet)

Elas possuem o seguinte formato:

<%! Código Java %>

Page 20: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Declarações

<%! String nome = “Samuel”; String sobrenome = “Ribeiro”;%><html> <head> <title>Página JSP</title> </head> <body bgcolor="#FFFFFF"> <%= nome %> </body></html>

Page 21: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Declarações

Por exemplo, aqui temos uma JSP que imprime o número de vezes que a página corrente foi requisitada desde que o servidor foi iniciado (ou a classe servlet foi mudada ou recarregada):

<%! Private int accessCount = 0; %> <html><head><title>exemplo de declaração</title></head><body><% accessCount ++;%>Acesso a página desde que o servidor foi inciado:<%= accessCount %></body></html>

Page 22: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Objetos Predefinidos

Objetos JSP implícitos são automaticamente declarados pelo contêiner e estão sempre disponíveis para utilização pelas expressões e scriptlets (mas não em declarações).

request

response

pageContext

out

session

application

config

exception

Page 23: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)
Page 24: Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de Java Server Pages (JSP)

Momento Troll