Tutorial Spring REST 4/9 – Configuración de Hibernate Validator con Spring 4

204

En este artículo, explicamos cómo configurar Hibernate Validator en tus POJOs para no aceptar la creación de los mismos con valores fuera de rango, lo cual es muy útil en servicios REST, debido a que no tendrás que validar los request manualmente sino que Hibernate Validator lo hará inmediatamente al recibirlos y enviará un mensaje de error en caso de no ser validos.

Dependencias de Maven

Primeramente, agregarémos las dependencias necesarias para Hibernate Validator y un par de bibliotecas más que nos ayudarán a optimizar aún más nuestros POJOs, como Jackson y Lombok.

Definición del POJO

A continuación, definimos nuestro POJO, que en este caso mapea a una tabla en base de datos. Comenzamos especificando que toda aquella propiedad que esté vacía, no se incluirá al responder en formato JSON, mediante la anotación @JsonInclude de Jackson. Después, en cada una de las propiedades definimos rangos y validaciones con las anotaciones de Hibernate Validaror como @NotNull, @Email y @Size, nota también el uso de anotaciones de Lombok como @Data.

Validar request desde los controladores

Para asegurar que los objetos que nos envían en los request de nuestros métodos REST, usaremos la anotación @Valid, como se muestra a continuación, lo cual validará el objeto recibido y responderá con un mensaje de error, de no ser valido, automáticamente.

Al recibir un valor incorrecto en el cuerpo de tu request o un valor fuera de rango, Hibernate Validator regresará una excepción al usuario describiendo dicho error y especificando qué parametro está incorrecto.

Continua con el tutorial

Recuerda que esta serie cuenta con 9 tutoriales, puedes consultar el siguiente sobre JPA dentro de un proyecto REST, a continuación:

Tutorial Spring REST 5/9 – Acceso a bases de datos SQL con Spring 4 y JPA

Repositorio en Github

Nota que no todo el código del proyecto fue incluido en este artículo, puedes encontrar el código completo en nuestro repositorio de Github:

https://github.com/chuucks/SPRING-REST-API/

Recuerda darnos una estrellita 😉


La configuración de Hibernate Validator con Spring 4 mostrada en este artículo para un servicio REST, es solo una forma propuesta de hacerlo y tienen fines únicamente ilustrativos para nuestra la comunidad de Codesolt.

Comments

comments