ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • HttpMessageConverter
    Spring 2023. 10. 5. 23:23

    HttpMessageConverter란 ?

    스프링 프레임워크에서 제공하는 인터페이스이며, SpringMVC의 일부이다.

     

    HTTP 요청 본문을 객체로 변경하거나, 객체를 HTTP 응답 본문으로 변경한다.

     

    hello라는 GET 요청이 들어오면 "hello"라는 문자열을 반환하는 컨트롤러가 있다.

    @RestController
    public class HelloController {
        @GetMapping("/hello")
        public String hello(){
            return "hello";
        }
    }

    위의 RestController는 데이터를 반환하는 컨트롤러이다. 사실 이 컨트롤러에서는 반환 타입의 String 앞에 @ResponseBody 어노테이션이 생략되어 있는 것이다. RestController는 뷰를 반환하는 컨트롤러가 아니기 때문에 생략이 가능한 것이다.

     

    하지만 RestControler가 아닌 일반 Controller는 응답 본문을 반환하는 게 아닌 뷰를 반환하는 컨트롤러이기 때문에 뷰를 반환하는 것이 아닌 응답 본문을 반환해야한다면 @ResponseBody 어노테이션을 생략할 수 없다.

    @Controller
    public class HelloController{
    	@GetMapping("/hello")
        	public @ResponseBody String hello(){
        		return "hello";
        	}
    }

    HttpMessageConverter는 이러한 역할을 처리하여 객체를 적절한 형식으로 변환하고 HTTP 요청 및 응답 본문에 적용한다. 따라서 컨트롤러가 데이터를 반환할 때 클라이언트와의 데이터 교환을 원활하게 지원한다.

     

     

    'Spring' 카테고리의 다른 글

    JDBC API, JDBC Template  (0) 2024.01.10
    @ModelAttribute를 사용하여 직렬화  (0) 2023.11.29
    Converter, Formatter  (0) 2023.08.29
    IoC 컨테이너(Application Context)와 빈  (0) 2023.08.22
    로그 (Log)  (0) 2023.04.03
Designed by Tistory.