스프링 폼 데이터 값 검증

spring

폼데이터 값 검증

- Validator를 이용한 검증
- ValidationUtils 클래스
- @Valid와 @InitBinder

Validator를 이용한 검증


폼에서 전달되는 데이터를 커맨드 객체에 담아 컨트롤 객체에 전달한다고 하였습니다. 이때 커맨드객체의 유효성을 검사할 수 있습니다. 참고로 javascript를 이용하는 것은 클라이언트에서 검사하는 것이고, 지금하는 Validator 인터페이스를 이용하는 방법은 서버에서 검사하는 방법 입니다.


클라이언트(form) –> 컨트롤러(Validator 객체 검증) –> 뷰 (커맨드객체) 검증결과 —

우선 validation을 검사하는 클래스를 만들어줍니다.

Validator 인터페이스를 상속받아 메소드 2개를 구현합니다.

컨트롤러부분에서 이 만든클래스를 호출하여 검사합니다.

이때 BindingResult 객체에는 에러가 담길수있습니다. 따라서 메소드를 수행했을때 문제가생기면 rejectValue를통해 에러가 담기게 됩니다.


ValidationUtils 클래스


이 클래스에 있는 static메소드를 사용하여 짧게 바꿀수 있습니다.


@Valid와 @InitBinder


좀더 스프링프레임워크적인 방법으로는 @Valid 어노테이션을 이용한 방법이있습니다.

이렇게 pom.xml에 추가해줍니다.

그다음 검사하고싶은 커맨드객체 앞에 @Valid 어노테이션을 쓰고

@InitBinder 어노테이션을 위와같이 구현합니다. 이때 validation 체크하는 클래스가 주입되어

자동으로 됩니다.

효준's profile image

효준

2017-12-29 09:58

다른글 보러가기

17/12/28 일기

이전 포스트

새해 첫날 데이트♥

다음 포스트