Spring

ContentNegotiatingViewResolver 사용하기 [Spring]

민돌이 2017. 9. 28. 13:35
반응형



01. ContentNegotiatingViewResolver ?


- View를 찾기위해 요청 URL의 확장자와 AcceptHeader를 사용하는 ViewResolver 입니다.

- viewResolvers(property name)에 설정된 ViewResolver를 사용하여 View를 찾습니다.


다음은 dispatcher-servlet.xml 에서 처리 해주어야할 일이다.



위의 예제에서 나오는 mediaTypes 는 3.2이하의 버전에서 사용가능한 방식입니다.





위의 예제는 3.2이상의 버전에서 mediaTypes이 ContentNegotiationManager 으로 바뀌어져 사용하는 방식입니다.


02. PathExtensionContentNegotiationStrategy ?


- url의 확장명이 json인 경우 json 형식으로 viewResolvers를 사용하게 됩니다.

- 그 외는 viewResolvers의 jsp의 형식으로 추가해서 사용되어 집니다.





Controller에서는 자신에게 필요한 정보에 맞게 url 형식을 해줍니다.

저 같은경우는 /test와 json 형식의 /test 두개를 받고 있네요.



결과를 보면

- Json 형식은

{"userName":"mindols"}


- Jsp 형식은

mindols


가 나올것입니다.




반응형