Spring

@Controller와 @RestController,(cannot resolve mvc view 'index')

synclair 2023. 3. 15. 00:13

@Controller : view 를 반환 하기 위해 사용

@RestController : @Controller + @ResponseBody, 주로 JSON 형대로 객체 데이터를 전달 하기 위함

 

@Controller 에선 ViewResolver가 return 에 적힌 (ex return "test") default 주소 인 template에서 test.html을 찾는다.

@RestController 는 ViewResolver 가 아닌 HttpMessageConverter가 동작해 반환 데이터에 따라 MappingJackson2HttpMessageConver(객체), StringHttpMessageConverter(문자열) 가 동작하여 데이터를 전달함. 

 

(cannot resolve mvc view 'index') 에러가 떳던 이유는

RestController 작성부분에 데이터를 반환하는 곳에서 view를 반환 받기 위해 헛짓을 하고 있어서 뜬 것이였다.