Spring学习总结(2.1)— Spring MVC
2015-04-29 23:52
423 查看
简介
Spring MVC是MVC模式在UI中的使用,当然Spring MVC只是其中的一种。这个模式的特点是:分离了模型、视图、控制器三种角色。将业务处理从UI设计中独立出来,分装到模型和控制器设计中去,使得他们相互之间解耦。这样的话,它们就可以独立扩展。流程
客户端请求提交到DispatcherServlet
由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Controller
DispatcherServlet将请求提交到Controller
Controller调用业务逻辑处理后,返回ModelAndView
DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图
视图负责将结果显示到客户端
WEB与Spring MVC的关系
Spring MVC也是Spring框架的一部分,所以Spring MVC也要基于IOC容器来使用。而Spring IOC容器是一个独立的模块,它并不能直接的在web容器里使用。所以需要设计一个启动和初始化IOC容器的过程。看如下配置文件:<span style="font-family:FangSong_GB2312;font-size:18px;"> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-mvc.xml,classpath:config/applicationContext-common.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet></span>这两个配置项listener配置了一个监听器,作用是监听WEB容器的启动,然后触发Spring IOC加载到WEB 容器中来。Servlet配置项配置的是Spring MVC的主分发器。其中参数指定了配置的bean的xml文件路径。这里的listener和DispatcherServlet为WEB Context访问Spring MVC提供了入口。
上下文在WEB容器中的启动
其实,在WEB中启动Spring MVC就是创建上下文关系。首先DispatcherServlet拦截的Http请求时需要Spring MVC为其提供相应的处理类。所有的配置好的需要Spring MVC管理的类就构成了一个系统的上下文关系。也就是说,所谓的上下文可以简单的理解为Bean的集合吧。上图为上下午关系的创建过程,根上下文是由WEB Context创建的,余下的子上下文关系都是由ContextLoader来创建的。这样Spring MVC在WEB Context中就搭建起来了。
总结:这篇博客讲了Spring MVC的基本流程和它与WEB 之间的关系。这些知识内容有助于对使用Spring MVC的理解。同时也是为了更好的使用吧。下篇再见!
相关文章推荐
- Spring MVC学习总结(3)——Spring3 MVC详解
- Spring MVC 学习总结(六)——Spring+Spring MVC+MyBatis框架集成
- Spring学习总结(2.2)-Spring MVC:DispatcherServlet
- Spring学习总结(2.3)-Spring MVC:handlerAdapter
- Spring学习总结(2.3)-Spring MVC:handlermapping
- Spring学习总结一(续2)
- Spring学习笔记之Spring MVC的工作机制
- Spring2.5学习2.1_Spring两种依赖注入方法
- spring学习总结(二):IOC & DI 概述及 IOC 容器
- Spring MVC学习总结。
- Spring学习总结(13)——Spring+Log4j+ActiveMQ实现远程记录日志
- 记录学习的点滴(Eclipse+Spring+Mybatis搭建问题总结)
- jee、spring、spring mvc、mybatis 学习(五)
- Spring学习总结(24)——Spring配置文件加载路径总结
- spring学习总结(四)
- Spring学习总结(23)——Spring Framework 5.0 新特性
- Spring学习总结(7)——applicationContext.xml 配置文详解
- Spring学习总结(一):先占个位置啥也没有
- RabbitMQ学习总结(7)——Spring整合RabbitMQ实例
- spring学习笔记:spring mvc不得不说的几处配置(转自:http://blog.csdn.net/sunxing007/article/details/4584300)