[Spring] ValidationUtils
Spring에서 Validator를 구현 할때 사용하는 Util인데.
사용방법은 다음과 같다.
@Override
public void validate(Object target, Errors errors) {
// TODO Auto-generated method stub
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "id", "error.field.required.user.id");
}
근데 유심히 보면 ValidationUtils.rejectIfEmptyOrWhitespace 가 어떻게 target의 id를 가져와서 빈값인지 체크를 할까 라는 궁금증이 생겼다.
파라미터로는 객체는 error만 넘겼는데...
해당 코드를 따라가보니..
public static void rejectIfEmptyOrWhitespace(
Errors errors, String field, String errorCode, Object[] errorArgs, String defaultMessage) {
Assert.notNull(errors, "Errors object must not be null");
Object value = errors.getFieldValue(field);
if (value == null ||!StringUtils.hasText(value.toString())) {
errors.rejectValue(field, errorCode, errorArgs, defaultMessage);
}
}
=_=;; 에러 쪽에서 Field 값은 가져온다..
흠...error 안에 target이 있는건가..
현재는 그렇게 이해하고 pass =_=;;
사용방법은 다음과 같다.
@Override
public void validate(Object target, Errors errors) {
// TODO Auto-generated method stub
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "id", "error.field.required.user.id");
}
근데 유심히 보면 ValidationUtils.rejectIfEmptyOrWhitespace 가 어떻게 target의 id를 가져와서 빈값인지 체크를 할까 라는 궁금증이 생겼다.
파라미터로는 객체는 error만 넘겼는데...
해당 코드를 따라가보니..
public static void rejectIfEmptyOrWhitespace(
Errors errors, String field, String errorCode, Object[] errorArgs, String defaultMessage) {
Assert.notNull(errors, "Errors object must not be null");
Object value = errors.getFieldValue(field);
if (value == null ||!StringUtils.hasText(value.toString())) {
errors.rejectValue(field, errorCode, errorArgs, defaultMessage);
}
}
=_=;; 에러 쪽에서 Field 값은 가져온다..
흠...error 안에 target이 있는건가..
현재는 그렇게 이해하고 pass =_=;;
댓글
댓글 쓰기