Artigo Java Magazine 06 - Jakarta Velocity

O uso de templates na camada de apresentação de aplicações web simplifica a manutenção e a separação de responsabilidades.

Esse artigo faz parte da revista Java Magazine edição 06. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler esse artigo em PDF.

Jakarta Velocity

Acabe a briga com os designers

O uso de templates na camada de apresentação de aplicações web simplifica a manutenção

e a separação de responsabilidades.

Uma das áreas em que o desenvolvimento de aplicações web com Java mais encontra problemas é na separação entre a camada de controle, que faz as chamadas à lógica de negócio, e a camada de apresentação, onde é realizada a montagem da interface web.

Uma forma eficaz de fazer essa separação é usando sistemas de templates (template engines). O framework Jakarta Velocity do Grupo Apache é um dos mais populares desses sistemas, e pode ser usado tanto em aplicações web quanto locais.

Sistemas de templates

Pode-se fazer muito com um sistema de templates – desde a geração de simples arquivos-texto à criação de arquivos binários, tudo o que siga um determinado padrão de formatação. Pode-se gerar código-fonte de alguma linguagem, XML, HTML, documentos RTF e muitos outros. Por exemplo, o Poseidon for UML, ferramenta CASE desenvolvida em Java, usa o Velocity para a geração de código a partir de diagramas UML.

Usar templates tem uma série de vantagens: existe uma melhor designação de tarefas, pois os programadores ficam concentrados na lógica do sistema e os designers se preocupam apenas com o layout, o que reduz o risco de alterarem indevidamente o código da aplicação. Além disso, os templates ficam em arquivos separados, possibilitando mudar o visual da aplicação sem a necessidade de recompilar ou reiniciar o sistema.

Mas o que exatamente são templates? São arquivos com grande parte de sua estrutura e  formatação pronta, contendo diretivas indicando valores a serem inseridos e ações a serem realizadas pelo sistema de templates. Com diretivas, é possível, por exemplo, mostrar o conteúdo de uma variável, navegar em listas e arrays, ou até mesmo invocar métodos de objetos.

Diretivas são a parte principal da Velocity Template Language (VTL) – veja mais sobre essa linguagem no quadro "Diretivas da VTL".

Funcionamento básico

Uma aplicação que usa o Velocity executa, basicamente, os seguintes passos: inicializa o sistema de templates, cria um contexto, adiciona objetos ao contexto, carrega um template e realiza o merge (veja a Figura 1). " [...] continue lendo...

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados