Cursos / Informática para Internet / Desenvolvimento Web I / Aula

arrow_back Aula 05 - Introdução e Recursos JavaServer Pages

Scriptlets

Vamos agora a outro exemplo de página JSP. Vamos implementar uma página que mostra quantas vezes ela já foi acessada. Para isso, vamos fazer uso da classe Contador, como mostrado na Listagem 4. A classe Contador possui um método estático chamado novoAcesso(), o qual incrementa a contagem (atributo contagem) de acessos realizados àquele método. Já o método getQuantidadeAcessos(), retorna a quantidade de acessos realizados até o momento. O uso da palavra-chave static faz com que o atributo e os métodos da classe Contador possam ser utilizados sem serem criados objetos, você está lembrado? Qualquer dúvida, consulte novamente o material da disciplina de Programação Orientada a Objetos.

Listagem 4 - Classe Contador usada para armazenar a quantidade de acessos.

Para usar essa classe em um arquivo JSP, precisamos fazer com que ele execute o método novoAcesso() e, em seguida, execute e apresente o conteúdo retornado pelo método getQuantidadeAcessos(). Isso é feito pelo arquivo acessos.jsp, mostrado na Listagem 5.

Listagem 5 - Código-fonte do arquivo acessos.jsp

Para executar o método novoAcesso(), fazemos uso de scriptlets. Os scriptlets são blocos de código Java delimitados pelos marcadores <% e %>. No exemplo da Listagem 5, o scriptlet se refere às linhas 3 a 5. Dentro desse bloco de código, pode existir qualquer comando Java válido. Isso porque, como você se lembra, o arquivo JSP será traduzido para um Servlet. O que estiver entre o <% e %> será simplesmente copiado para o método do Servlet responsável pela criação da página de resposta (jsp_service()).

Voltando para o exemplo, quando o JSP for executado (na verdade, seu Servlet gerado), o método novoAcesso() também será executado, incrementando em uma unidade a quantidade de acessos armazenada pela classe Contador (atributo contagem). Por fim, o valor dessa contagem é apresentado na página de resposta através da linha 8. O resultado de vários acessos a esse arquivo JSP é mostrado na Figura 3.

Acessos sequenciais ao arquivo

Versão 5.3 - Todos os Direitos reservados