Весной MVC, когда запрос отправляется, DispatcherServlet
указывает HandlerMapping
, который указывает, какой контроллер должен обрабатывать запрос. Controller
обрабатывает запрос и возвращает модель с указанными View
.Вид с ModelAndView против ViewResolver
И я не понимаю, что происходит после этого, когда ViewResolver
начинает свою работу. Если View
уже задан Controller
, почему есть слой ViewResolver
? Что это на самом деле? Не следует ли указывать View
перед или паралектором с помощью Controller
? Или, может быть, Controller
должен вызвать слой ViewResolver
?
Слой ViewResolver запускается только тогда, когда вы возвращаете имя представления как String, а не указанный вид? – nowszy94
действительно, в контроллере каждый вид должен быть переведен таким образом, чтобы весна могла его разрешить. Это представление может быть pdf, JSON, html, jsp, xml и т. Д. Строка не может сказать весне, как разрешать эти представления, не используя ViewResolver –