티스토리 뷰

Spring Web MVC@Controller 클래스에서 메써드의 처리 가능한 리턴 타입은 아래와 같다.


  • String: 문자열이다. 크게 2가지로 처리가 나뉜다. @ResponseBody가 클래스 또는 메써드 레벨에 명시되어 있다면 문자열은 그대로 HTTP 응답 메시지의 Body에 담겨 반환된다. 명시되어 있지 않다면 문자열은 View의 이름으로 인식하여 사전 설정된 ViewResolver에 의해 처리된다.

  • ?: 모든 POJO 오브젝트이다. 해당 오브젝트는 기본 값으로 JSON으로 변환되어 HTTP 응답 메시지의 Body에 담겨 반환된다.(XML 형식으로 변환하고자 할 경우 @RequestMappingproduces 필드에 MediaType.APPLICATION_XML_VALUE을 명시한다.)

  • ResponseEntity<?>: HTTP 응답 메시지이다. Status Code, Header, Body를 상황에 맞게 직접 빌드하여 반환할 수 있다. Body에는 POJO 오브젝트를 담을 수 있으며 처리 방식은 앞서 설명한 것과 동일하다.
댓글
댓글쓰기 폼