springMVC初始化和流程(一)

一、Spring MVC概述

  Spring MVC(指Spring Web MVC)是Spring提供给Web应用的框架设计,MVC框架一般来说由三部分组成:

  • Model:模型层,一般由java bean完成,主要是进行数据库操作;
  • View:视图层,用于前端展示,比如jsp、html等;
  • Controller:控制层,链接前后端,处理用户请求,起着承前启后的作用;

早期的MVC模型:

   

图一 Model1

                                 图二 Model2——早起的MVC模型

  早期的MVC模型多了一个Servlet组件,首先用户的请求到达Servlet,Servlet组件主要作为控制器,这样Servlet就接收了这个请求,可以通过它来调度Java Bean,来读写数据库的数据,然后将结果放到JSP中,这样就可以获得数据并展现给用户。

                                               图三 Spring MVC 架构

  图三展示了传统的模型层被差分为业务层(Service)和数据访问层(Dao)。对于Spring MVC而言其最大的特色就是结构松散,比如满足手机端、页面端和平板电脑等各类请求,几乎可以在Spring MVC 中使用各类视图,包括JSON、JSP、XML、PDF等。

 二、Spring MVC 组件与流程

  Spring MVC的核心在于其流程,这是使用Spring MVC 框架的基础,Srping MVC 是一种基于Servlet的技术,它提供的核心控制组件DispatcherServlet 和相关的组件,并制定了松散的结构,已适应各种灵活的需要。下面看一下Spring MVC 的组件和流程图:

               图四 Spring MVC的组件和流程

  从上图中可以看出Spring MVC框架是围绕着DispatcherServlet而工作的,这个类是一个Servlet,在Servlet初始化(调用init方法):

  1、首先Spring MVC 会根据配置,获取配置信息,获取URI和处理器Handler之间的映射关系(HandlerMapping),由于处理器上还加入了拦截器,这样开始执行处理器和拦截器组成的执行链,而运行处理器需要一个对应的环境,这样它就有了一个处理器的适配器(HandlerAdapter),通过适配器就能运行对应的处理器及其拦截器。

  2、在处理器返回模型和视图给DispacherServlet后,DispatcherServlet就会把对应的视图信息传递给视图解析器(ViewResolver)。

  

猜你喜欢

转载自www.cnblogs.com/huif/p/11104507.html