요청(request) 메시지
응답(response) 메시지
요약
| 비동기식 클라이언트-서버 통신을 위해 JSON 형식의 데이터를 주고 받는다.
JSON > 자바 객체 > JSON
에 대한 변환이 가능@RequestBody
와 @ResponseBody
이다.Message Converter
가 이 역할을 한다고 볼 수 있다.@RequestBody
와 @ResponseBody
에 대해 알아보자.JSON 요청 > HTTP 메시지 컨버터 > 자바 객체
@ResponseBody
@PostMapping("/request-body-json-v5")
public HelloData RequestBodyJsonV5(@RequestBody HelloData data) {
log.info("username={}, age={}", data.getUsername(), data.getAge());
return data;
}
POST
메서드로 넘어온 JSON
데이터를 잡아낸다.JSON Object
가 스프링 부트에 정의된 HelloData
객체로 변환되어 data
에 담긴다.자바 객체 > HTTP 메시지 컨버터 > JSON 응답
@ResponseStatus(HttpStatus.OK)
@ResponseBody
@GetMapping("/response-body-json-v2")
public HelloData responseJsonV2() {
HelloData helloData = new HelloData();
helloData.setUsername("userA");
helloData.setAge(20);
return helloData;
}
HelloData
객체를 HTTP의 BODY에 직접 반환한다.viewResolver
대신에 HttpMessageConverter
가 동작References
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-1/dashboard
인프런 - 김영한님의 [스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 수강하며 필기한 내용입니다.
https://cheershennah.tistory.com/179