Introdução à programação para web com Java - Módulo 03: Conceitos básicos de Java Server...
-
Upload
professor-samuel-ribeiro -
Category
Education
-
view
485 -
download
5
Transcript of Introdução à programação para web com Java - Módulo 03: Conceitos básicos de Java Server...
AULA 03 – 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
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.
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.
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.
Ciclo de Vida
Ciclo de Vida
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.
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>
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
Elementos de Scripting
Scriptlets
Expressões
Declarações
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.
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>
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>
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
Scriptlets
Saída no browser
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
Expressões
<html> <head> <title>Página JSP</title> </head> <body bgcolor="#FFFFFF"> <%="Número aleatório: " + (int)(Math.random()*10) %> </body></html>
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 %>
Declarações
<%! String nome = “Samuel”; String sobrenome = “Ribeiro”;%><html> <head> <title>Página JSP</title> </head> <body bgcolor="#FFFFFF"> <%= nome %> </body></html>
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>
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
Momento Troll