Este é um post disponível para assinantes MVPEste post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais!
Conhecendo o Hibernate Validator - Java Magazine 83
Este artigo apresenta o Hibernate Validator, implementação de referência da JSR 303 – Bean Validation API. Esta API permite validar, de forma fácil, objetos de classes que representam o domínio de uma aplicação.
Java Magazine 83
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Java Magazine 83
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Java Magazine 83
Conhecendo o Hibernate Validator
Aprenda a validar objetos de forma fácil e rápida
Conheça o Hibernate Validator, que implementa a JSR 303 – Bean Validation API, e permite a validação dos dados contidos em objetos
Em dezembro de 2009, a versão final da JSR 303 foi disponibilizada. Trata-se da Bean Validation API, que permite validar dados de forma fácil e rápida através do uso de anotações. A proposta desta JSR é a validação dos dados presentes nas classes que modelam o domínio da aplicação, que comumente seguem o padrão JavaBeans. O que é mais interessante é que a Bean Validation API independe da camada da aplicação onde é usada e até da forma de programar. Ela pode ser usada tanto em aplicações web como desktop, além de não estar atrelada ao mecanismo de persistência usado. Enfim, pode ser usada nos mais diversos cenários.
A validação de dados sempre esteve presente em sistemas que recebem entrada de dados do usuário. Cada framework implementava um mecanismo proprietário para validar as informações, o que criava problemas de incompatibilidade e dificultava a integração.
Com o surgimento da JSR 303 foi estabelecida uma API padrão para validação, que é flexível o suficiente para ser utilizada pelos mais diversos tipos de frameworks. Além disso, a Bean Validation API possibilita a validação de dados nas classes do domínio da aplicação, que é mais simples do que quando o processo é feito por camada. Na validação por camada, é necessário verificar o mesmo dado diversas vezes (nas camadas de apresentação, negócio, persistência, etc.), a fim de garantir a consistência da informação. Ao validar os dados diretamente nas classes de domínio, o processo todo fica centralizado, uma vez que os objetos destas classes normalmente trafegam entre as camadas aplicação.
A implementação de referência da JSR 303 é o Hibernate Validator, que será explicado em detalhes no decorrer deste artigo.
Configurando o Hibernate Validator
Para trabalhar com a API é necessário utilizar a versão 5 do Java ou superior, já que o Hibernate Validator não é compatível com versões anteriores do JDK. A configuração da aplicação para usar a API é simples. O primeiro passo é fazer o download no site oficial do projeto, que pode ser consultado na seção de referências. A versão disponível até o momento da escrita deste artigo é a 4.1.0.
Após a descompactação do arquivo (que pode ser baixado nos formatos ZIP ou TGZ), basta adicionar os seguintes JARs no classpath da sua aplicação: hibernate-validator-4.1.0.Final.jar, log4j-1.2.14.jar, slf4j-api-1.5.6.jar, slf4j-log4j12-1.5.6.jar e validation-api-1.0.0.GA.jar. Todos eles fazem parte do arquivo que você baixou. Caso a sua aplicação use o Java 5 ao invés do 6, é necessário adicionar também os JARs da API JAXB: jaxb-api-2.2.jar e jaxb-impl-2.1.12.jar. Este conjunto de arquivos é o mínimo necessário para colocar o Hibernate Validator para funcionar.
Definindo restrições com o uso de annotations
As restrições são utilizadas para definir regras a respeito dos dados de um objeto. Você pode, por exemplo, definir que um determinado atributo não pode ser nulo ou que o valor de um atributo numérico deve pertencer a um intervalo bem definido. Quando o processo de validação dos dados é executado, é feita uma verificação para checar se os dados estão de acordo com as regras estabelecidas.
Quando é necessário adicionar restrições de validação no código, isto é feito através da utilização de annotations. O Hibernate Validator já possui um conjunto de annotations para validações mais comuns, embora a API possibilite que o programador faça customizações. A criação de restrições customizadas será abordada na sequência deste artigo.
"
ATENÇÃO! A exibição deste artigo foi interrompida.
Este é um post disponível para assinantes MVP
Aprenda a validar objetos de forma fácil e rápida
Conheça o Hibernate Validator, que implementa a JSR 303 – Bean Validation API, e permite a validação dos dados contidos em objetos
Em dezembro de 2009, a versão final da JSR 303 foi disponibilizada. Trata-se da Bean Validation API, que permite validar dados de forma fácil e rápida através do uso de anotações. A proposta desta JSR é a validação dos dados presentes nas classes que modelam o domínio da aplicação, que comumente seguem o padrão JavaBeans. O que é mais interessante é que a Bean Validation API independe da camada da aplicação onde é usada e até da forma de programar. Ela pode ser usada tanto em aplicações web como desktop, além de não estar atrelada ao mecanismo de persistência usado. Enfim, pode ser usada nos mais diversos cenários.
A validação de dados sempre esteve presente em sistemas que recebem entrada de dados do usuário. Cada framework implementava um mecanismo proprietário para validar as informações, o que criava problemas de incompatibilidade e dificultava a integração.
Com o surgimento da JSR 303 foi estabelecida uma API padrão para validação, que é flexível o suficiente para ser utilizada pelos mais diversos tipos de frameworks. Além disso, a Bean Validation API possibilita a validação de dados nas classes do domínio da aplicação, que é mais simples do que quando o processo é feito por camada. Na validação por camada, é necessário verificar o mesmo dado diversas vezes (nas camadas de apresentação, negócio, persistência, etc.), a fim de garantir a consistência da informação. Ao validar os dados diretamente nas classes de domínio, o processo todo fica centralizado, uma vez que os objetos destas classes normalmente trafegam entre as camadas aplicação.
A implementação de referência da JSR 303 é o Hibernate Validator, que será explicado em detalhes no decorrer deste artigo.
Configurando o Hibernate Validator
Para trabalhar com a API é necessário utilizar a versão 5 do Java ou superior, já que o Hibernate Validator não é compatível com versões anteriores do JDK. A configuração da aplicação para usar a API é simples. O primeiro passo é fazer o download no site oficial do projeto, que pode ser consultado na seção de referências. A versão disponível até o momento da escrita deste artigo é a 4.1.0.
Após a descompactação do arquivo (que pode ser baixado nos formatos ZIP ou TGZ), basta adicionar os seguintes JARs no classpath da sua aplicação: hibernate-validator-4.1.0.Final.jar, log4j-1.2.14.jar, slf4j-api-1.5.6.jar, slf4j-log4j12-1.5.6.jar e validation-api-1.0.0.GA.jar. Todos eles fazem parte do arquivo que você baixou. Caso a sua aplicação use o Java 5 ao invés do 6, é necessário adicionar também os JARs da API JAXB: jaxb-api-2.2.jar e jaxb-impl-2.1.12.jar. Este conjunto de arquivos é o mínimo necessário para colocar o Hibernate Validator para funcionar.
Definindo restrições com o uso de annotations
As restrições são utilizadas para definir regras a respeito dos dados de um objeto. Você pode, por exemplo, definir que um determinado atributo não pode ser nulo ou que o valor de um atributo numérico deve pertencer a um intervalo bem definido. Quando o processo de validação dos dados é executado, é feita uma verificação para checar se os dados estão de acordo com as regras estabelecidas.
Quando é necessário adicionar restrições de validação no código, isto é feito através da utilização de annotations. O Hibernate Validator já possui um conjunto de annotations para validações mais comuns, embora a API possibilite que o programador faça customizações. A criação de restrições customizadas será abordada na sequência deste artigo.
"
ATENÇÃO! A exibição deste artigo foi interrompida.
Este é um post disponível para assinantes MVPEste post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais!

[Este post ainda não foi associado a uma sequência]
Você está em:
canal Java
Carlos Eduardo G. Tosin
Space do autor
Instrutor oficial dos cursos on-line de Java da Softblue. Formado em Ciência da Computação pela PUC-PR, pós-graduado em Desenvolvimento de Jogos para Computador pela Universidade Positivo e Mestre em Informática na área de Sistemas Distribuídos, também pela PUC...
Space do autor




1
0
