SpringMVC(一)入门

      在Spring框架之IOC一文中我们在文章开始就已经介绍了Spring框架的几大板块,其中就包括SpringMVC,也就是说SpringMVC是Spring框架的一部分,提供了前台展示相关内容的web框架,SpringMVC的底层实现上需要用到servlet。而MVC(Model View Control)表示:Model 数据(bean,dao)View 页面(JSP)   Control(控制层:根据请求不同获取不同的页面数据)。

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

Spring MVC运行原理

  1. 用户发起请求(request),请求前端控制器(DispatcherServlet)

  2. 前端控制器请求处理器映射器(HandlerMapping)查询Handler(通过xml配置查找,通过注解形式查找)

  3. 处理器映射器将处理结果向前端控制器返回处理器执行链(HamdlerExecutionChain)对象

  4. 前端控制器请求处理处理器适配器(HandlerAdapter)来执行Handler

  5. 处理器执行Handler

  6. 处理器向处理器适配器返回ModelAndView对象(SpringMVC底层提供的一个对象,返回包括一个View视图逻辑名和Model数据)

  7. 处理器适配器向前端控制器返回ModelAndView

  8. 前端控制器请求视图解析器(ViewResolve)解析视图

  9. 视图解析器向前端控制器返回View对象

  10. 前端控制器执行渲染视图

  11. 前端控制器向用户响应请求

组件说明:

1、前端控制器

作用:作为SpringMVC的入口函数,接口请求,响应结果,相当于转发器,中央处理器

整个流程控制的核心,由它调用其它其他的组件完成用户请求,其存在降低了组件间的耦合度

2、处理器映射器

作用:根据用户的url查找Handler,即处理器(Controller)

Spring提供了不同的处理器映射器实现不同的映射方式(XML文件和注解)

3、处理器适配器

作用:按照特定规则执行Handler

4、处理器

作用:按照处理器适配器的规则实现,才能找到处理器,从而真正执行Handler

Handler涉及到具体的业务请求,所以需要开发人员进行开发

5、视图解析器 

作用:根据视图逻辑名解析成物理视图名,在生成View的对象,最后对View对象进行渲染处理

SpringMVC中提供了很多的View视图类型,包括jstView/FreemarkerView/PDFView

6、视图View

接口,实现类支持不同的View类型(jsp,pdf,...ÿ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值