BeanUtils – adicionando novos Conversores

agosto 10, 2007 às 1:48 am | Publicado em Java | Deixe um comentário

O BeanUtils é um projeto da Apache Software Foundation. É bastante utilizado pelos frameworks para fazer alguns trabalhos sujos com beans. Por exemplo, o struts usa o beanUtils para popular o form com os parâmetros da requisição.

Outra utilização bem famosa é o BeanUtils.copyProperties. Com certeza vocês já o acharam em algum exemplo de Struts, sendo utilizado para copiar os dados do formbean para um objeto de negócio.

Durante esta conversão de formBean para entidade, pode ser necessário fazer algumas conversões de tipos. O BeanUtils já possui alguns conversores pré-configurados (classes wrapper, tipos primitivos, listas, etc…).

Neste post vou mostrar como adicionar um novo conversor no BeanUtils, o conversor para objetos Date. O primeiro passo é criar o conversor. Basicamente um conversor é um objeto que implementa a interface Converter do beanUtils.

beanutils1.jpg

O método convert recebe dois parâmetros:

  • a classe para qual o valor deverá ser convertido
  • o valor que será convertido

A nossa implementação apenas faz o parse da String para um objeto Date. 🙂

Agora basta registrar este converter no BeanUtils.

beanutils2.jpg

Apartir de agora quando o BeanUtils encontrar um objeto Date, ele usará o nosso conversor de data. Veremos um exemplo de uso.

beanutils4.jpg

Neste exemplo é demostrado exatamento o que é feito pelo struts para popular o formBean. O importante é perceber que o atributo dtNascimento do objeto Pessoa foi populado corretamente.

Vale ressaltar que o conversor adicionado é válido para todas as operações com o BeanUtils, ou seja, o copyProperties também vai saber converter para Date.

Espero que tenham gostado.

Até a próxima. 🙂

Anúncios

Deixe um comentário »

RSS feed for comments on this post. TrackBack URI

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Blog no WordPress.com.
Entries e comentários feeds.

%d blogueiros gostam disto: