Spring MVC的安装讲解(二)

SpringMVC其实就是Spring的一个模块,两者无需通过中间整合层进行整合。

SpringMVC是基于MVC的整合框架

MVC:是一个设计模式

在b/s系统下的应用

发一个request请求到C控制器(controller),然后控制器请求模型M model(active,service,dao)进行进一步的处理,然后进行处理结果返回到控制器,并且控制器进行响应,会进行一个视图的渲染,将模型数据填充到request域à最后进行response相应(给客户渲染的特定的页面)

b/s系统下,模型无法直接将数据填充到视图中去

Spring MVC的安装讲解(二)

SpringMVC框架

 

  1. 人发request请求到前端控制器(DispatcherServlet)
  2. 前端控制器请求处理器映射器(HandlerMapping)查找处理器(Handler),可根据xml配置和注释进行查找
  3. 处理器映射器(HandlerMapping)向前端控制器返回Handler
  4. 前端控制器通过调用处理器适配器去执行Handler
  5. 处理器适配器去执行Handler
  6. Handler执行完成后给适配器返回ModelAndView
  7. 处理器适配(HandlerAdapter)器向前端控制器返回ModelAndView,它是springmvc框架的一个底层对象,包括了model和view
  8. 前端控制器请求视图解析器去进行试图解析,根据逻辑视图名解析成真正的视图(jsp)
  9. 视图解析器向前端控制器返回view
  10. 前端控制器进行视图渲染,视图渲染就是将模型数据(在ModelAndView对象中)填充到request域。
  11. 前端控制器向用户相应结果。

 

组件:

  1. 前端控制器(DispatcherServlet)(不需要程序开发)

接受请求相应结果,相当于转发器     *处理器

有了DispatcherServlet,就减少了其他组件之间的耦合性

  1. 处理器映射器(HandlerMapping)(不需要程序员开发)

根据请求的url查找Handler

  1. 处理器适配器(HandlerAdapter)

按照待定规则(HandlerAdapter规定的规则)去执行Handler

 

  1. 处理器Handler(需要程序员开发)

注意:编写Handler时候要按照HandlerAdapter的要求去做,这样适配器可以正确执行Handler

  1. 视图解析器(view resolver)(不需要程序员开发)

进行视图解析,根据逻辑视图名解析火真正的视图(view)

  1. 视图(view)(需要程序员开发jsp)

view是一个接口,实现类支持不同view类型(jsp、freemarker、pdf… …)