Spring MVC 是如何工作的 - Gukie/interview GitHub Wiki

首先,Spring MVC是基于MVC设计模式上的一个框架

  1. M: 模型层,包括数据Bean, Service层和Dao层
  2. V: View,视图,比如jsp,html
  3. C: Controller, 控制器

其次,Spring MVC的工作原理,是基于 一个叫 DispatcherServlet 进行的, 具体工作原理如下:

  1. Client 请求被 DispatcherServlet 接收到
  2. DispatcherServlet 收到请求之后,会去当前请求对应的Controller. 这个查找过程,是通过查找 HandlerMapping 实现的,因为 HandlerMapping 维护这 URI 与 Controller之间的关系
  1. DispatcherServlet 获取到 要找的Controller时,会去调用Controller
  2. Controller会调用 Model层进行业务逻辑的处理,处理完之后会返回一个ModelAndView给DispatcherServlet. 其中 Model层包括:Service层,Dao层 以及数据Bean
  1. DispatcherServlet获取到ModelAndView之后,会将ModelAndView中的View交给ViewResolver进行视图解析
  2. 解析好之后,ViewResolver会使用ModelAndView中的 Model对视图进行渲染,并返回给DispatcherServlet
  3. DispatcherServlet将渲染好的视图返回给客户端


refer:

  1. http://blog.csdn.net/liang5630/article/details/43733733
  2. http://www.jianshu.com/p/ce85b9e7d650