terça-feira, 27 de abril de 2010

JSP & Java Beans

O que é Java Beans?
São classes Java que obdecem determinadas regras:
*devem existir um construtor público e sem parâmetros.
*nenhum atributo pode ser público.
*os atributos são acedidos através de métodos setxxx, getxxx, e isxxx.

Estas regras determinam um padrão que possibilita o uso de Beans como componentes em ferramentas de desenvolvimento. Estes componentes minimizam a necessidade de programação, pois são utilizados através de suas propriedades.

Usamos Java Beans em páginas JSPs para separamos a lógica, dos layouts. Deixando assim, com mais clareza nosso código, facilitando a vida dos web-designer e programadores. Acabando com uma lambança de códigos nas páginas JSPs.

Exemplo: usando Java Beans:

>>>Minha classe .java

public class Hora {

private int hora;
private int minuto;

public Hora() {
hora = minuto = 0;
}

public int getSegundos() {
return hora * 3600 + 60 * minuto;
}

}

Para utilizar Java Beans em uma aplicação comum deve-se criar um objeto e aceder aos seus métodos.
Em JSP existem marcas especiais para a criação e recuperação de propriedades que não exigem conhecimento de programação.

>>>Minha página .jsp
Permite JSP gerir objetos Java, cria objetos Java ou seleciona um objeto que já existe para que seja possível utilizá-lo numa JSP.

EXEMPLO:

<jsp: useBean id="obj" class="Hora" />
Esta tag é semelhante a:
Hora obj = new Hora();

Algumas marcas do Java Beans:

Para ler uma propriedade de um Bean:
<jsp: getProperty name="obj" property="segundos">

Alterar propriedade de um Bean:
<jsp: setProperty name="obj" property="segundos" value="60">

Inicializar um Bean:
<jsp: useBean id="obj" class="hora">

Obs: O código é iniciado apenas se o Bean for criado.

Partilha dos Beans:
A criação padrão disponibiliza o Bean apenas para a página atual.
Para alterar o nível de acesso usa-se o atributo scope.

exemplo:
Scope pode ter 4 valores:

page = mantém o Bean até que a página seja mostrada.
request = mantém o Bean até que a resposta seja toda enviada.
session = o Bean existe durante a sessão.
application = o bean dura enquanto a aplicação web atual estiver ativa.

Propriedades indexadas:
Não existem marcas específicas para acesso a propriedades indexadas.
Para aceder tais propriedades deve-se usar scriptlets e expressões.
exemplo:

Propriedades e parâmetros:
Os parâmetros podem ser inseridos diretamente em propriedades de Java Beans.

Basta usar o nome do parâmetro no atributo param:
<jsp: setProperty name="obj" property="nome" param="nome" />

Nenhum comentário:

Postar um comentário

DÚVIDAS - CRITICAS - SUGESTÕES