Spring MVC 原理

来源:互联网 发布:淘宝pkpm激活码多少钱 编辑:程序博客网 时间:2024/05/22 07:02

看孔浩老师的springmvc视频 自己总结


Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。

Spring MVC就是一个框架,个人认为做得要比Structs2的要好一些儿(仁者见仁,智者见智)。Spring MVC框架的设计也迎合了目前比较流行的REST风格架构,其本身提供了REST风格的支持。

Spring Web MVC也是服务到工作者模式的实现,但进行可优化。前端控制器是DispatcherServlet;应用控制器其实拆为处理器映射器(Handler Mapping)进行处理器管理和视图解析器(View Resolver)进行视图管理;页面控制器/动作/处理器为Controller接口(仅包含ModelAndView handleRequest(request, response) 方法)的实现(也可以是任何的POJO类);支持本地化(Locale)解析、主题(Theme)解析及文件上传等;提供了非常灵活的数据验证、格式化和数据绑定机制;提供了强大的约定大于配置(惯例优先原则)的契约式编程支持。

Spring mvc的运行机制:

1、Request(请求)到达Dispatcher Servlet(controler),控制器根据Handler Mapping(配置文件) 查找当前的URL请求具体应该交给哪一个Controller来处理,找到之后,交给相应的Controller来处理.

2、Controller与Service,JavaBean交互,处理完成之后,得到某一个值,返回一个视图。通过ViewResolver来找到究竟对应哪一个视图,是用哪种形式返回的,再来找到一个视图,返回给Request。



 (图片来自于网络,仅供参考)



0 0