Do que se trata o artigo:

O artigo apresenta as novidades da versão 3 de Servlets. Estas novidades serão exibidas por meio de uma aplicação web, a qual foi implementada com os recursos mais recentes e disponíveis pela JSR 315.


Em que situação o tema é útil:

Para desenvolvedores de software, que utilizam Servlets e desejam obter informações relacionadas às mudanças existentes na nova versão, 3.0, e de que maneira estas mudanças podem trazer melhorias a uma aplicação.

Conheça os recursos dos Servlets 3.0:

Servlets é uma tecnologia utilizada no desenvolvimento de sistemas para Web em Java, que surgiu com o intuito de propor uma alternativa às páginas estáticas, já que estas não eram capazes de processar requisições e retornar respostas ao cliente, surgindo assim as páginas dinâmicas. Conforme surgem novas versões das tecnologias, há a necessidade de estudá-las, buscando uma atualização de conhecimento e a possibilidade de utilizar os novos recursos. Este artigo visa explorar com exemplos práticos as novidades contidas na nova versão de Servlets.

Autores: Everton Coimbra de Araújo e Thainá Mariani

Servlet é uma tecnologia do Java Enterprise Edition destinada a processar requisições HTTP, construir dinamicamente o conteúdo e enviar uma resposta ao cliente Web. Com Servlets é possível manipular os dados obtidos por meio de uma requisição, como por exemplo, realizar a persistência em uma base de dados ou a realização de algum cálculo necessário, para então definir e construir a resposta e enviá-la ao cliente (navegador).

Além dos Servlets, outros recursos disponíveis na especificação JSR 315 são os Filters e os Listeners. Os Filters têm o objetivo de interceptar uma requisição, podendo realizar o processamento necessário antes ou depois de ela atingir seu destino. Os Listeners, por sua vez, ficam em um estado de monitoria, aguardando a ocorrência de um evento. Para isso, há a definição de várias interfaces, que funcionam como ouvintes de ações específicas.

Com o lançamento do Java Enterprise Edition 6, surgiu o Servlet 3.0, baseado na especificação JSR 315 (ver Links). Essa nova versão, apresenta novas e avançadas funcionalidades. Uma das principais mudanças é o fato de poder realizar o mapeamento de Servlets, Filters e Listeners por meio de anotações, sem a necessidade de recorrer à edição manual do descritor de implantação web.xml, facilitando assim o desenvolvimento de aplicações web. Outros recursos implantados foram a configuração simplificada ao usar um framework e o suporte a chamadas assíncronas.

É importante ressaltar que apesar dos Servlets 3.0 apresentarem maior facilidade no desenvolvimento, os recursos utilizados até a versão anterior ainda são permitidos. Dessa maneira, o processo de migração para a nova versão, de um projeto já existente na versão anterior, deverá ocorrer sem problemas.

Nos próximos tópicos, serão analisadas as novas características da API Servlet 3.0, utilizando como base uma aplicação.

Descrição da aplicação

A aplicação exemplo foi desenvolvida com Servlets 3.0 utilizando a IDE NetBeans 7.0 (ver Links). Por meio desta IDE foi criado um projeto do tipo Aplicação Web, nomeado como “Servlets3”. E como ambiente de execução da aplicação, foi utilizado o GlassFish 3 (ver Links). A Figura 1 exibe a estrutura do projeto criado no NetBeans. Nesta estrutura, a pasta Páginas Web armazenará os arquivos relacionados às páginas do projeto, as quais estão dispostas em diferentes formatos, como por exemplo, HTML e JSP. Ainda na pasta Páginas Web, há a pasta WEB-INF, responsável por armazenar as configurações necessárias para que a aplicação web execute, como parâmetros iniciais para o contexto da aplicação. Outra pasta disponível no projeto é a Pacotes de código-fonte. Nela serão armazenadas as classes implementadas na aplicação.

Figura 1. Estrutura do projeto no NetBeans.

Esta aplicação de exemplo tem o foco em um cadastro de vagas de emprego oferecidas por uma empresa hipotética, tendo sua estrutura apresentada pelo diagrama de classes da Figura 2.

Figura 2. Diagrama de Classes da aplicação.

Entre as principais funcionalidades do sistema estão a realização do cadastro da empresa, bem como o cadastro e listagem de suas respectivas vagas. Outra funcionalidade implementada será a página de autenticação do usuário, a fim de limitar o acesso a determinadas páginas. Todas as funcionalidades implementadas terão as listagens apresentadas, assim como as descrições dos recursos utilizados para o seu desenvolvimento.

Utilizando anotações

A partir da versão 5 do Java, passaram a existir as anotações, com o propósito de realizar as configurações necessárias nas próprias classes. Desta maneira, foi levada para as classes uma alternativa ao uso dos arquivos XML para este fim. Essa nova maneira de configuração busca tornar o processo mais simples.

Para facilitar ainda mais o mapeamento e configuração dos servlets, sua terceira versão possibilita substituir as linhas de código, antes mapeadas no arquivo de configuração web.xml, pelas anotações realizadas na própria classe. Estas anotações foram especificadas pela JSR 315.

Servlets

Para demonstrar o uso de servlets, uma página HTML com um formulário referente ao cadastro da empresa será utilizada. Esta página pode ser visualizada na Figura 3. Nela, é possível identificar os dados que precisam ser informados pelo usuário à aplicação. Desta maneira, após a informação destes, eles precisam ser enviados ao servidor. No servidor, o recurso responsável por receber e tratar esses dados é um Servlet. Este servlet, ao receber os dados, poderá tratá-los da maneira que for necessária ao contexto da aplicação. Para a implementação deste servlet, serão utilizadas anotações como técnica para a configuração.

...

Quer ler esse conteúdo completo? Tenha acesso completo