[ Valid와 Validated 공통점 ]
: 유효성 검증가능
[ Valid와 Validated 차이점 ]
: 그룹지정이 불가능
: @Valid는 스프링이 만든 기술은 아니며 JSR-303이란 이름으로 채택된 서블릿 2.3 표준스펙 중 하나.
스프링은 이 새로운 표준을 확장하고 쉽게 사용할 수 있도록 스프링만의 방식으로 재편성.
@Validated는 Spring에서 제공
먼저 @Valid 사용법을 알아보겠습니다.
< Source >
@ModelAttribute 앞에 @Valid 를 추가하면서 Valid 검증을 할수있게 됩니다.
Event의 limit 필드는 @Min(0) 추가하면서 최소값은 0이다라는 조건을 달게 되고
테스트케이스에서 limit을 -1을 보내게 되면 Error를 발생하게 됩니다.
@Valid 대신 @Validated도 똑같이 작동한다. 하지만 @Validated는 그룹지정이 가능하다는 장점이 있다.
Event 클래스를 보면 interface를 두개 만들고 각 필드에 groups을 설정하게 되면
테스트케이스에서 limit에 -1값을 주었지만 에러가 나지 않는다.
Validated에서 ValidatedName 클래스에 대해서만 검증을 하기 때문이다.
'Spring > SpringMVC' 카테고리의 다른 글
[Spring MVC] @SessionAttribute (0) | 2019.08.19 |
---|---|
[Spring MVC] @SessionAttributes (0) | 2019.08.15 |
[Spring MVC] @ModelAttribute (0) | 2019.08.13 |
[Spring MVC] 요청 매개변수 ( @RequestParam) (0) | 2019.08.13 |
[Spring MVC] 미디어 타입 ( MediaType ) (0) | 2019.07.25 |