본문 바로가기
  • 오늘도 한걸음. 수고많았어요.^^
  • 조금씩 꾸준히 오래 가자.ㅎ
IT기술/spring

[Spring] 하이버네이트 Validator, Bean Validation 빈 벨리데이션이란?

by 미노드 2024. 2. 20.

Bean Validation? 

검증 로직을 표준화하여 모든 프로젝트에 적용할 수 있는 기술을 말합니다.
Bean Validation을 잘 활용하면, 애노테이션 하나로 검증 로직을 매우 편리하게 적용할 수 있습니다.

Bean Validation은 특정한 구현체가 아니라 Bean Validation 2.0(JSR-380)이라는 기술 표준입니다.
쉽게 이야기 해서 검증 애노테이션과 여러 인터페이스의 모음입니다.

마치 JPA가 표준 기술이고 그 구현체로 하이버네이트가 있는것 처럼
Bean Validation을 구현한 기술중에 일반적으로 사용하는 구현체는 하이버네이트 Validator입니다.

이름이 하이버네이트가 붙어서 그렇지 ORM과는 관련이 없습니다.
하이버네이트에 대해서는 별도로 정리하고, 하이버네이트 Validator라는게 별도로 있다 정도로 정리하면 될 것 같습니다.

공식 사이트: http://hibernate.org/validator/
공식 메뉴얼: https://docs.jboss.org/hibernate/validator/6.2/reference/en-US/html_single/ 
검증 애노테이션 모음: https://docs.jboss.org/hibernate/validator/6.2/reference/en-US/html_single/#validator-defineconstraints-spec

위 사진처럼 class에 어노테이션을 몇개 넣는것으로 Validation 을 해주는데,
조건에 맞지 않을 경우 어떤식으로 에러처리할지 같이 고민해서 개발하는 점이 필요합니다.
실제로 DB에 들어가도록 request영역이나 별도 service 영역에서 체크 후 insert시키는 것도 가능합니다.

지금은 Bean Validation이 이런거다 정도로만 정리하려 합니다.