[置顶] SpringMVC工作原理
2016-07-10 14:14
302 查看
Spring工作原理图:
![](http://img.blog.csdn.net/20160710134158997?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
SpringMVC作为spring的一部分,继承了spring轻量级,高度可配置性,良好的拓展性和兼容性等特征。
SpringMVC主要由控制器(DispatcherServlet)、处理器映射(HanderMapping)、把处理器包装为适配器(HandlerAdapter(或叫做适配器))、处理器(Handler)、视图解析器(ViewResolver)、视图(View)这几部分构成。
1.一个请求到达服务器,首先经过的是DispacherServlet,它是springMVC的入口,也是核心所在
2.DipatcherServlet接收到这个请求之后将根据请求的信息(包括URL、Http方法和请求参数Cookie等)以及HandlerMapping(读取配置文件)的配置找到处理请求的适配器(HandlerAdapter)。
3-4.DispatcherServlet根据HandlerMapping找到对应的Handler,将处理权交给Handler(Handler将具体的处理进行封装),再由具体的HandlerAdapter对Handler进行具体的调用。
5.Handler对数据处理完成以后将返回一个ModelAndView()对象给DispatcherServlet。
6.Handler返回的ModelAndView()只是一个逻辑视图并不是一个正式的视图,接下来将到达ViewResolver(视图解析器),DispatcherSevlet通过ViewResolver将逻辑视图转化为真正的视图View。
7.Dispatcher通过model解析出ModelAndView()中的参数进行解析最终展现出完整的view并返回给客户端
SpringMVC作为spring的一部分,继承了spring轻量级,高度可配置性,良好的拓展性和兼容性等特征。
SpringMVC主要由控制器(DispatcherServlet)、处理器映射(HanderMapping)、把处理器包装为适配器(HandlerAdapter(或叫做适配器))、处理器(Handler)、视图解析器(ViewResolver)、视图(View)这几部分构成。
1.一个请求到达服务器,首先经过的是DispacherServlet,它是springMVC的入口,也是核心所在
2.DipatcherServlet接收到这个请求之后将根据请求的信息(包括URL、Http方法和请求参数Cookie等)以及HandlerMapping(读取配置文件)的配置找到处理请求的适配器(HandlerAdapter)。
3-4.DispatcherServlet根据HandlerMapping找到对应的Handler,将处理权交给Handler(Handler将具体的处理进行封装),再由具体的HandlerAdapter对Handler进行具体的调用。
5.Handler对数据处理完成以后将返回一个ModelAndView()对象给DispatcherServlet。
6.Handler返回的ModelAndView()只是一个逻辑视图并不是一个正式的视图,接下来将到达ViewResolver(视图解析器),DispatcherSevlet通过ViewResolver将逻辑视图转化为真正的视图View。
7.Dispatcher通过model解析出ModelAndView()中的参数进行解析最终展现出完整的view并返回给客户端
相关文章推荐
- Java NIO服务器端开发
- [Java IO]01_File类和RandomAccessFile类
- Java异常
- SpringSecurity方法层4种方式使用
- Lucene建立索引 使用IKAnalyzer扩展词库
- 如何用javadoc命令,生成api帮助文档
- IKAnalyzer词典占用内存大小分析
- java编译做了哪些事?
- java web
- des算法java模拟实现
- druid-1.0.21源代码导入eclipse工程遇到的问题
- java web
- 配置hadoop-1.2.1出现localhost: Error: JAVA_HOME is not set.
- 日常小结-java随机数类Random
- JavaSE 之 final 初探
- 二、java三大特性--继承
- java+内存分配及变量存储位置的区别[转]
- java异常情况分析
- springMVC初体验
- java单元测试junit