spring MVC


前言

学习SpringMVC后,我想对所学内容进行总结和复习。在整理过程中,我发现自己学习得并不够深入、扎实,也没有完全掌握所有内容。视频和书本应结合学习,因为不同老师的视频可能会介绍不同的知识点,而书本则能提供系统的笔记。我自己是一个初学者,所以以下的总结可能还存在不完善和错误之处,欢迎专业人士指正,非常感谢。

目录

一、Spring核心模块

1. 核心模块概述

2. Spring版本命名规则(补充)

二、SpringMVC流程及原理

1. 执行流程

(1)执行流程概述

用户请求通过前端控制器(处理器)DispatcherServlet进行处理。DispatcherServlet调用处理器映射器HandlerMapping,根据请求的URL等信息查找相应的处理器Handler及相关interceptor,构造HandlerExecutionChain执行链。然后,通过处理器适配器HandlerAdapter调用具体的处理器(Handler/Controller),即业务中自己编写的Controller。Controller处理完后返回ModelAndView给处理器适配器HandlerAdapter,再返回给前端控制器DispatcherServlet。DispatcherServlet调用视图解析器ViewResolver处理ModelAndView,解析成具体的页面地址,生成并返回View对象。根据View对象进行视图渲染,填充Model,并向用户返回响应。

(2)执行流程详细说明

处理器映射器是SpringMVC框架中的一种对象,实现了HandlerMapping接口。它的作用是根据请求从SpringMVC容器中获取处理器对象。框架将找到的处理器对象放入一个叫做处理器执行链(HandlerExecutionChain)的类中进行保存。这个执行链包含了处理器对象和项目中的所有。处理器适配器是SpringMVC框架中的对象,需要实现HandlerAdapter接口。它的作用是执行处理器方法,调用MyController的方法得到返回值ModelAndView。视图解析器是SpringMVC中的对象,需要实现ViewResolver接口。它的作用是将逻辑视图名解析成物理视图名,即具体的页面地址,并创建View对象。

还要了解SpringMVC的组件,包括前端控制器(DispatcherServlet)、处理器映射器(HandlerMapping)、处理器(Handler)、处理器适配器(HandlerAdapter)和视图解析器(ViewResolver)等。

(3)SpringMVC详细流程图

这里无法直接展示流程图,但可以通过查阅相关文档和资料,了解SpringMVC的详细流程图。

三、源码分析

1. 初始化过程

2. 前端控制器(处理器)DistepcherServlet的工作原理

3. 其他重要组件的工作原理和源码实现

四、引用参考资料

1. 引用资料列表

2. 相关资料的链接和概述

五、关于Spring核心模块的补充

Spring Web MVC(简称SpringMVC)是Spring提供的Web应用框架,属于表现层框架。Spring框架包括核心容器、AOP和设备支持、数据访问及集成、Web、报文发送、Test等六大模块。对于Spring5的模块结构,存在一些问题需要了解。例如,在Spring上,里程碑版(M)的5.0版本之后的Release版(稳定版)的模块结构图难以找到。关于Spring的版本命名规则,也需要进行补充说明。例如,Snapshot代表快照版,尚不稳定;Release代表稳定版;GA代表广泛可用的稳定版(General Availability);M代表里程碑版;RC代表终测版等。了解这些有助于更好地理解和使用Spring框架。