Ciclo de vida de um JSP

Como qualquer outra linguagem, o “scripting” JSP tem uma gramática bem definida que inclui elementos de sintaxe para desenvolver diversos processos. Uma linguagem de alto nível, que também é chamada de “TAGS JSP”, classificadas em seis categorias.
Comentarei um pouco sobre cada uma dessas categorias.

Forma resumida das categorias

  • Directive: Especifica o momento de tradução do JSP
  • Declaration: Declara e define métodos e variáveis
  • Scriplet: Permite ao desenvolvedor escrever de forma livre dentro de página JSP
  • Expression: Usado para imprimir (escrever) valores no HTML de saída em uma página JSP
  • Action: Prové instruções em tempo de execução para o motor JSP
  • Comment: Usado para documentação e comentário do código JSP

Forma detalhada das categorias

DIRECTIVE (Diretivas)

As “directives” (diretivas) prevêem informações gerais sobre a página JSP para o motor JSP. Existem três tipos de diretivas: page, include e taglib.

  • page: Informa ao motor JSP sobre as propriedades da página JSP.

Exemplo: Informar que a página JSP usará Java como linguagem de script.
<%@ page language=”java” %>

  • include: Informa ao motor JSP para incluir o conteúdo de outro arquivo (HTML, JSP, etc) na página atual.

Exemplo: Informar que o conteúdo da página paginaLogin.html seja incluído dentro da página atual.
<%@ include file=”paginaLigin.html” %>

  • taglib: Associa o prefixo com um tag library (biblioteca de tags).

Exemplo: Associar a biblioteca “yrosslib.tld” a página JSP
<%@ taglib prefix=”yrosstag” uri=”yrosslib.tld” %>

Observação: As diretivas SEMPRE começam com <%@ e terminam em %>
<%@ page        attribute-list %>
<%@ include     attribute-list %>
<%@ taglib      attribute-list %>


Pontos importantes sobre a sintaxe das diretivas

  • Os nomes de tag, os atributos, os valores são “case sensitive” (Sensíveis a escrita)
  • O valor deve ser envolvido por um par de aspas simples ou duplas
  • Um par de aspas únicas é equivalente a um par de aspas simples
  • Não deve existir espaço entre o sinal de (=) e o valor.

DECLARATIONS (Declarações)

Declaram e definem métodos e variáveis que podem ser utilizados dentro da página JSP.

Exemplo:

Declarar uma variável chamada contador do tipo inteira com valor inicial igual a zero.

<%! int contador = 0; %>

Esta variável será iniciada APENAS quando a página for carregada a primeira vez pelo motor JSP, o valor será mantido nas requisições subseqüentes.

Uma declaração sempre inicia com <%! e termina com %>. Ela pode conter muitas declarações java validas.

Exemplo:

<%! String nomes[] = {“Ythalo Rossy”, “Haylander”, “He-man”, “G.I. Joe”} %>

<%!

String getNome(int i) {

try {

return nomes[i];

} catch (Exception e) {

return null;

}

}

%>

No exemplo anterior a presença das duas declarações é apenas ilustrativa, para mostrar que é possível utilizar diversas declarações.

SCRIPTLETS

Scriptlets são fragmentos de código Java inserido em página JSP que são executados cada vez que são requisitadas.
Permite a inserção de regras de negocio (lógica computacional) dentro das paginas JSP.

Uma scriptlet sempre inicia com <% e termina com %>. Ela pode conter muitas linha de código Java valida.

Exemplo:

Página JSP que contabiliza a quantidade de acessos

<%@ page language=”java” %>

<%! int contador = 0;       %>

<%

out.print(“<html><body>”);

contador++;

out.print(“Bem vindo! Você é nosso visitante numero ” + contador);

out.print(“</body></html>”);

%>

Onde:

<%@ page language=”java” %>: Diretiva page que diz que usaremos Java como linguagem.

<%! int contador = 0; %>: Declaração de variável. Lembre que as declarações acontecem apenas uma vez ao carregar.

<%

out.print(“<html><body>”);

%>: A referência out, que por padrão representa um objeto do tipo javax.servlet.jsp.JspWriter, é utilizada para escreve diretamente no fluxo de dados da resposta.

Observe que é necessário seguir a sintaxe correta de declarações do Java. Utilizar o out.println(“TESTE”) sem colocar o (;) ponto e virgula no final gera um erro de compilação.

EXPRESSIONS (Expressões)

Expressions atuam como espaços reservados para expressões da linguagem Java, que são avaliadas cada vez que a página é acessada.

Tem a capacidade de escrever diretamente no HTML de saída valores primitivos, de um objeto, retorno de um método, expressões aritméticas ou booleanas.

Uma expressão sempre inicia com <%= e termina com %>.

Observações:

  • Só pode existir uma expressão
  • A expressão não deve ser finalizada com (;) ponto e vírgula

Exemplo:

Validas

<%= 500  %>

<%= anInt*3.5/100-500 %>

<%= aBool %>

<%= false %>

<%= !false %>

<%= getChar() %>

<%= Math.random() %>

<%= aVector %>

<%= aFloatObj %>

<%= aFloatObj.floatValue() %>

<%= aFloatObj.toString() %>

Invalidas

<%= aBool; %>

<%= int i = 20 %>

<%= sBuff.setLength(12); %>

ACTIONS (Ações)

Actions são comandos executados diretamente pelo motor JSP durante a execução da página JSP.

Os actions JSP são divididos em seis padrões, conforme segue abaixo:

  • jsp:include
  • jsp: forward
  • jsp:useBean
  • jsp:setProperty
  • jsp:getProperty
  • jsp:plugin

Resumindo, jsp:include e jsp:forward permitem a página JSP utilizar outro componente web, os próximos três, jsp:useBean, jsp:setproperty e jsp:getProperty, são utilizados para o uso de javaBeans dentro das página JSP. A ultima ação, jsp:plugin, instrui ao motor JSP gerar código HTML apropriado para incorporar componentes do lado do cliente, como Applets.

O desenvolvedor pode customizar suas próprias ações, conhecidas como tags customizadas. A sintaxe das ações JSP segue o seguinte padrão:

<jsp:actionName attribute-list />

Onde:

actionName: O nome de uma das seis ações padrões mencionadas (podendos ser uma tag customizada).

attribute-list: Representa uma lista de atributos pares chave=valor especificos para a ação.

Observações:

  • O nome da ação, seus atributos e seus valores são sensíveis a escrita (case sensitive)
  • O valor deve esta entre um par de aspas simples ou duplas
  • Não pode existir espaço em branco entre o sinal de (=) e o valor.

COMMENTS (Comentários)

São utilizados para o propósito de documentação entre os desenvolvedores e não afetam a saída da página JSP. A sintaxe de um comentário JSP é a seguinte:

<%– Alguma coisa a ser comentado –%>

O comentários em JSP sempre iniciam com <%– e terminam com –%>

Explore posts in the same categories: Certificações, Java, SCWCD

Tags: ,

You can comment below, or link to this permanent URL from your own site.

2 Comments on “Ciclo de vida de um JSP”

  1. Paulo Jr. Says:

    Excelente Ythalo, parabéns pelo post. É importante saber isso para a prova.

  2. pablonobrega Says:

    show de bola, amigo. fez-me lembrar meus experimentos com JSP + Servlets, nos trabalhos da faculdade. um deles era uma loja virtual completa, que valeu nota. parabéns.


Comment: