인프런 커뮤니티 질문&답변

기팝님의 프로필 이미지
기팝

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

HTTP 요청 메시지 - JSON

@ModelAttribute @RequestBody

작성

·

349

1

안녕하세요

public String requestBodyJsonV1(@ModelAttribute  @RequestBody HelloData helloData) throws IOException {

 log.info("messageBody={}" , helloData);

        return "ok";

}

이런식으로 두 어노테이션을 써 보았는데 어노테이션 위치에 순서 상관잆이 값이 

로그에

messageBody=HelloData(username=null, age=0)

값이 찍히는데 이건 

@ModelAttribute 이   @RequestBody  보다 

우선 순위가 높아서 일까요 ?

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 기팝님

애노테이션에는 순서라는 개념이 없습니다.

스프링이 내부에서 어떤 애노테이션 코드를 먼저 적용할지의 순서가 있습니다.

하지만 그렇다고 해도, 이런 순서 부분이 메뉴얼에서 보장되는 부분이 아니기 때문에

이렇게 둘을 함께 사용하시면 안됩니다.

감사합니다.

기팝님의 프로필 이미지
기팝

작성한 질문수

질문하기