Spring Framework源码(八):SpringMVC概览

本文介绍SpringMVC框架的工作流程,包括如何通过DispatcherServlet处理HTTP请求、选择合适的Handler及Adapter、执行Controller方法并返回ModelAndView对象,最终由ViewResolver渲染视图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    SpringMVC已经成为当下非常流行的表现层框架,这个继Struts之后兴起的框架相比于Struts在使用上更加方便,配置更加简洁。说到表现层框架,完成的工作可以分为三个部分:根据URL匹配相应的控制器(C);绑定请求参数到数据模型(M);将数据模型中的数据渲染到页面。其余的工作就扔给业务逻辑层来处理。

   

     这几个部分大致描述了web请求的基本流程,结合框架具体的类来说就是当你在浏览器输入正确的URL:http://www.xxx.com/aa/bb.c并点击回车后,请求到达服务器(以tomcat为例)后服务器会由web.xml中配置的DispatcherServlet拦截请求,获取HandlerExecutionChain这个维护一个HandlerInterceptor List的责任链bean。这个对象负责用配置的HandlerInterceptor过滤request。过滤完后才从众多HandlerAdapter中筛选出合适的Adapter调用其适配对象(Handler即是配置的各种controller)的handle方法找到对应Controller的处理方法返回一个ModelAndView对象。再由ViewResolver来渲染一个view输出到HttpServletResponse所带的OutputStream中传递到浏览器,从而完成一次web请求。

    下节我们将从DispatcherServlet开始,分别讲解SpringMVC文件上传,SpringMVC后端数据绑定、验证、转换,SpringMVC视图处理等部分的知识,从而使读者能从讲解中一窥SpringMVC的全貌。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值