Spring MVC设计概览

Spring的上下文体系通过ContextLoader和DispatcherServlet建立并初始化的过程。

在完成对ContextLoaderListener的初始化之后,Web容器开始初始化DispatcherServlet,这个初始化的启动与在web.xml中载入次序的定义有关。DispatcherServlet会建立自己的上下文来持有Spring MVC的Bean对象,在建立自己持有的IOC容器时,会从ServletContext中得到根上下文作为DispatcherServlet持有上下文的双亲上下文。有了这个根上下文,再对自己持有的上下文进行初始化,最后把自己持有的这个上下文保存到ServletContext中,供以后检索和使用。


DispatcherServlet类的继承关系

DispatcherServlet通过继承FrameworkServlet和HttpServletBean而继承了HttpServlet,通过使用Servlet API对Http请求进行响应,称为Spring MVC的前端处理器,同时成为MVC模块与Web容器集成的处理器端。

DispatcherServlet的工作大致可以分为两个部分:一个是初始化部分,由initServletBean启动,通过initWebApplicationContext最终调用DispatcherServlet的initStrategies方法,在这个方法里,DispatcherServlet对MVC模块的其他部分进行了初始化,比如HandlerMapping、ViewResolver等,另一个是对HTTP请求进行响应,作为一个Servlet,Web容器会调用Servlet的doGet和doPost方法,经过FrameworkServlet的processRequest简单处理后,会调用DispatcherServlet的doService方法,这个方法调用中封装了doDispatch,这个doDispatch是Dispatcher实现MVC模式的主要部分。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值