ControllerAdvice

By | 2020년 11월 16일
Table of Content

ControllerAdvice

ControllerAdvice 의 용도에 대해 정리해 둔다.

ExceptionHandler

가장 일반적으로 사용되는 케이스이다.

Controller 에서 발생하는 Exception 을 처리해 줄 때 사용한다.

ModelAttribute

Controller 의 View 에서 사용되는 Model 에 값을 일괄적으로 입력해 줄 때 사용한다.

메뉴나 사용자 아이디 등을 설정해 줄 수 있다.

메뉴같은 경우 모든 페이지에 공통적으로 표시되어야 하는데, 모든 컨트롤러 메소드마다 메뉴 정보를 가져오는 코드를 작성하면 코드 중복도 많아지지만, 아래와 같이 ControllerAdvice 를 이용하면 하나의 코드로 모든 메뉴에 메뉴를 표시할 수 있게 된다.

@ControllerAdvice
public class MenusControllerAdvice {

    @ModelAttribute
    public void addAttributes(Model model) {
        model.addAttribute("menus", getMenus());
    }
}

InitBinder

ResponseBodyAdvice, RequestBodyAdvice

댓글 남기기