-
카테고리
-
세부 분야
백엔드
-
해결 여부
해결됨
springframework validator 질문
20.08.28 22:14 작성 조회수 163
0
안녕하세요.
덕분에 많이 배우고 있습니다. validator를 bean으로 등록해서 입력 검증을 구현하셨는게 인상적이네요.
제가 기존에 알고있던 validator를 구현하는 방식은 Validator 인터페이스를 구현한 클래스를 생성한 후 WebMvcConfigurer.getValidator 메소드를 오버라이딩 하는 방법과 controller 클래스에 @InitBinder 에노테이션이 선언된 메소드에서 WebDataBinder.addValidator 호출 하는 방법 두가지를 알고 있습니다.
// global validator 등록
class MvcConfig implement WebMvcConfigure {
@Override
public Validator getValidator() {
return new EventValidator();
}
}
// local validator 등록
@RestController
class EventController {
@InitBinder
public void initBinder(WebDataBinder binder) {
binder.addValidator(new EventValidator());
}
}
하지만 첫번째 방법의 경우 다른 커맨드 객체를 검증하기 어려운 단점이 있고 두번째 방법은 요청 메소드가 호출될때마다 validator가 매번 생성되는 것으로 알고 있습니다.
혹시 강사님은 custom validation을 구현할때 3가지 방식 중 어떤 방식을 선호하고 왜 선호하는지 알 수 있을까요?
감사합니다.
답변을 작성해보세요.
답변 2