본문 바로가기
Framework & Library/Spring Boot

[Spring Boot] : 오류 코드와 메시지 처리(1)

by 오주현 2022. 2. 11.
반응형

오류 코드와 메시지 처리(1)


저번에 messages.properties를 사용했는데 오류 메시지도 똑같이 사용하기 위해 하나 더 만들어 주었다. 같은 곳에 오류 코드 메시지도 적을 수 있지만 오류 메시지만 구분하기 쉽게 하기 위해 따로 파일을 만들어 관리한다고 한다.

 

required.item.itemName=상품 이름은 필수입니다.

errors.properties를 만들고 오류 메시지를 넣어주었다.

중요한건 application.properties에 등록을 해 주어야 한다.

 

spring.messages.basename=messages,errors

따로 적어주는 게 없으면 messages가 디폴트 값인데 errors.properties도 등록해 사용하기 위해 위처럼 등록을 해 주었다. 이렇게 되면 messages와 errors properties 둘 다 사용하게 되는 것이다.

 

if (!StringUtils.hasText(item.getItemName())) { 
    bindingResult.addError(new FieldError("item", "itemName", item.getItemName(), false, new String[]{"required.item.itemName"}, null, null));
}

그다음은 FieldError가 제공하는 두번째 생성자를 통해 파라미터 값을 담아주었는데

 

cdoes 부분은 메시지 코드를 배열로 여러 값을 전달할 수 있고 순서대로 매칭해서 처음 매칭되는 메시지를 사용한다. 지금 range.item.price를 매칭시키고 있다.

 

errors.properties에서 확인할 수 있다. 하지만 뒤에 값을 더 적어주고 range.item.price가 매칭되지 않았을 때 다른 메시지를 매칭시킬 수 있다. 예를 들면 기본 오류 메시지를 보여줄 수도 있다.

 

arguments는 Object[]{} 형식으로 값을 치환하여 전달할 수 있다.


스프링 MVC 2편 - 백엔드 웹 개발 활용 기술을 참고하여 공부하였습니다.

반응형

댓글