더북(TheBook)

7.2.2 메서드에 @ModelAttribute 적용

컨트롤러 안에 @RequestMapping이 적용되지 않은 별도의 일반 메서드를 만들어 해당 메서드에 @ModelAttribute를 적용하는 것을 메서드 수준의 @ModelAttribute라고 합니다. 형식은 다음과 같습니다.

@ModelAttribute("모델 속성 이름")
public String 메서드 이름() {
    ...
}

@ModelAttribute
public void 메서드 이름(Model model) {
    // model.addAttribute(...); 
}

※ 제공 패키지: org.springframework.web.bind.annotation

메서드 수준의 @ModelAttribute는 뷰 페이지에서 공통으로 사용할 수 있는 커맨드 객체의 프로퍼티(멤버 변수, 필드)를 설정하여 뷰 페이지에 출력하는 역할을 합니다.

@RequestMapping이 선언된 요청 처리 메서드처럼 웹 요청 URL을 처리할 수 없지만, 먼저 호출되며 컨트롤러 안에 여러 개 만들 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.