Spring MVC原理图
工作过程
- Spring MVC是通过将需要Spring MVC处理的请求映射到一个名叫DispatcherServlet的servlet上实现的。
- 客户端请求首先会交给DispatcherServlet,DispatcherServlet会通过HandlerMapping去查找当前请求的URL对应的那个Handler(通常是Controller中对应的一个方法)。
- DispatcherServlet会将请求交给第2步找到的那个Handler方法执行
- 执行的过程可能会调用若干的Service来完成业务的处理
- 最后在这个Handler中将处理的结果封装成未ModelAndView对象返回给DispatcherServlet。ModelAndView是模型和视图的封装对象。
- DispatcherServlet根据ModelAndView中的View,去ViewResolver(视图解析器)中找到对应的视图。
- DispatcherServlet将ModelAndView中的Model交给第6步中找到的那个View(JSP,JSTL...)进行视图的渲染。
- 渲染后,将视图转为HTTP响应流返回给客户端。