Springboot 웹 MVC ViewResolver
Springboot 웹 MVC ViewResolver
백기선님의 강의인 Springboot 개념과 활용 강의를 듣고 공부한 내용을 정리한 글
ViewResolver
VeiwResolver의 한 종류인 ContentNegotiatingViewResolver
에 대해 먼저 알아보도록 하자.
ContentNegotiatingViewResolver
는 들어오는 요청의 accept-header에 따라 응답이 달라진다.
만약 한 사용자가 요청을 했을 때 그 요청에 응답을 받을 수 있는 모든 View를 찾아낸 다음 가장 적절한 View를 반환하는데, 그것을 판단하기 위한 가장 좋은 정보가 accept-header
이다.
경우에 따라서는 accept-header
를 제공하지 않는 경우가 있어서, ?f ormat=pdf
이라는 파라미터를 요청하면 해당 타입의 View를 내려준다.
HttpMessageConvertersAutoConfiguration
HttpMessageConverter에 관한 자동 설정을 지원하는 클래스이다.
JSON의 경우 별도의 설치가 필요 없지만 만약 XML을 사용하고 싶은 경우라면
의존성에 jackson-dataformat-xml
을 추가해주어야 JacksonXMLMessageConverter가 작동하게 된다.
이러한 HtppMessageConverter들은 HttpMessageConvertersAutoConfiguration에서 관리되고 있다.
Reference
인프런 백기선님의 스프링 부트 개념과 활용