본문 바로가기
728x90
반응형

FieldError2

[Spring] 오류 메시지 코드 단계 우선 순위 및 검증 오류 코드로 메시지 코드를 생성하는 MessageCodesResolver 오류 코드를 만들 때 다음과 같이 자세히 만들 수도 있다. required.item.itemName = 상품 이름은 필수입니다. range.item.price = 상품의 가격 범위 오류입니다. 또는 아래처럼 단순하게 만들 수도 있다. required = 필수 값 입니다. range = 범위 오류입니다. 단순하게 만들면 범용성이 좋아서 여러 곳에서 사용할 수 있지만, 메시지를 세밀하게 작성하기 어렵다. 반대로 너무 자세하게 만들면 범용성이 떨어진다. 가장 좋은 방법은 범용성으로 사용하다가, 세밀하게 작성해야 하느 ㄴ경우 세밀한 내용이 적용되도록 메시지에 단계를 두는 방법이다. 예를 들어서 required 라고 오류 코드를 사용한다고 가정해보자. 다음과 같이 required 라는 메시지만 있으면 이 메시지를.. 2023. 9. 27.
[Spring] BindingResult의 rejectValue(), reject() 를 사용하여 FieldError, ObjectError를 직접 생성하지 않고 검증하기 FieldError, ObjectError를 다루려면 여러 가지 파라미터를 세팅해야하기 때문에 불편한 부분이 많다. 컨트롤러에서 BindingResult는 검증해야할 객체인 target 바로 다음에 온다. 따라서 BindingResult는 이미 본인이 검증해야할 객체인 target을 알고 있다. log.info("objectName={}", bindingResult.getObjectName()); log.info("target={}", bindingResult.getTarget()); 를 실행해보면 와 같이 나오는 걸 볼 수 있다. rejectValue(), reject() BindingResult가 제공하는 rejectValue(), reject()를 사용하면 FieldError, ObjectError.. 2023. 9. 27.
728x90
반응형