spring mvc运行原理

大家都知道对于spring mvc框架,最核心的就是DispatcherServlet。

那么DispatcherServlet到底能干些什么活呢,其实DispatcherServlet就是负责协调组织不同组件以完成请求处理并返回响应的工作。

spring mvc 处理请求的过程简单如下:

1.一个请求过来,首先去匹配DispatcherServlet的请求映射路径(web.xml中可配置,如:

      <servlet>
<servlet-name>springServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:/applicationContext-mvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

),如果匹配成功,则web容器将该请求转交给DispatcherServlet进行处理;

2.DispatcherServlet接收到请求后,将根据请求信息及HandlerMapping的配置找到处理请求的Handler;

3.通过HandlerAdapter对该Handler进行封装,再以统一的适配器接口调用Hander;

4.Handler完成业务逻辑的处理后,返回一个ModelAndView(包含视图逻辑名和模型数据信息)给DispatcherServlet;

5.DispatcherServlet借助ViewResoler完成逻辑视图名到真实视图对象的解析;

6.得到真实视图对象View后,DispatcherServlet使用这个View对ModerAndView中的模型数据进行视图渲染。

总结:可以发现整个过程DispatcherServlet担任了协调和组织不同组件,完成请求处理并返回响应的工作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值