-
HTTP 메시지 컨버터 : 개요SPRING/스프링 MVC 2021. 6. 18. 11:09
HTTP 메시지 컨버터
- 요청 본문에서 메시지를 읽어들이거나(@RequestBody), 응답 본문에 메시지를 작성할 때(@ResponseBody) 사용한다.
@RestController public class SampleController { @GetMapping("/message") public String message(@RequestBody String body) { return body; } }
기본 HTTP 메시지 컨버터
- 바이트 배열 컨버터
- 문자열 컨버터
- Resource 컨버터
- Form 컨버터 (폼 데이터 to/from MultiValueMap<String, String>)
- (JAXB2 컨버터)
- (Jackson2 컨버터)
- (Jackson 컨버터)
- (Gson 컨버터)
- (Atom 컨버터)
- (RSS 컨버터)
컨버터 설정 방식
- 기본으로 등록해주는 컨버터에 새로운 컨버터 추가하기: extendMessageConverters
- 기본으로 등록해주는 컨버터는 다 무시하고 새로 컨버터 설정하기: configureMessageConverters
- 의존성 추가로 컨버터 등록하기 (대부분 이방식이고, 스프링MVC/스프링부트 공통적으로 사용 가능)
○메이븐 또는 그래들 설정에 의존성을 추가하면 그에 따른 컨버터가 자동으로 등록 된다. ○WebMvcConfigurationSupport
테스트
@RunWith(SpringRunner.class) @SpringBootTest @AutoConfigureMockMvc public class SampleControllerTest { @Autowired MockMvc mockMvc; @Test public void stringMessage() throws Exception { this.mockMvc.perform(get("/message") .content("hello")) .andDo(print()) .andExpect(status().isOk()) .andExpect(content().string("hello")); } }
'SPRING > 스프링 MVC' 카테고리의 다른 글
HTTP 메시지 컨버터 : XML (0) 2021.06.19 HTTP 메시지 컨버터 : JSON (0) 2021.06.18 Resource Handler (0) 2021.06.16 HandlerInterceptor (서블릿 필터 비교) (0) 2021.06.15 Formatter 추가하기 (0) 2021.06.14