Spring/Spring MVC

Json 컨버터

100win10 2020. 5. 28. 22:03

 

  • 기본 HTTP message Converter가 제공이 되지만 의존성을 통해 컨버터를 등록하는 경우가 많다.

 

 

  • 기본적으로 스프링 부트는 스타터 웹만 추가해도 JacksonJSON을 의존성에 넣어준다.

  • (스프링 부트 기반이 아니라면 JacksonJSON 의존성을 넣어주면 된다)

  • 따라서 해당 컨버터를 사용할 수 있게 되고 jacksonJSON이 제공하는 ObjectMapper을 활용할 수 있다.

  • 의존성만 추가가 되면 아무런 설정을 하지 않아도 JSON 컨버터를 사용할 수 있다.

 

 

 

 

@RestController

  • 다음과 같이 요청 본문으로 들어오는 Json을 person 객체로 받아보자.

  • 그리고 person을 그대로 return 해보자.

  • 이때 응답으로 보내는 리턴 타입인 Person을 Json 타입으로 보내보자.

 

 

  • 여러 가지 Http Message 컨버터 중에서 어떤 컨버터를 사용해야 할지는 콘텐츠 타입에 헤더를 판단한다.

  • content-type : 본문에 보내는 타입이 어떤 타입인지 서버에 알려주는 것이다.

  • accept : 이 요청에 대한 응답으로 어떤 타입인지 알려준다.

  • 본문에 Json을 담아서 보낼거고 Json으로 응답이 오는 것을 바란다 라고 명확하게 알려주자.

 

 

 

 

 

요청

 

응답

 

  • PostMan을 통한 테스트을 통해서 예상한 대로 결과가 나오는 것을 확인할 수 있다.