在Spring上建立基础模块,探究源码

1、在源码基础上新建一个模块,为了方便查看源码

image.png

image.png
image.png

2、引入Spring-webmvc

image.png

3、创建页面

image.png

4、创建web.xml

image.png

5、创建配置文件

image.png

配置好Tomcat,然后Debug启动,看其调用栈,分析其流程。

前端控制器 DispatcherServlet 继承结构及

1、先点进去看DispatcherServlet的继承结构,看其流程

image.png

2、进入FrameworkServlet

image.png

3、进入HttpServletBean

image.png

4、进入HttpServlet

image.png

5、看HttpServlet的doPost方法。

image.png
父类没有什么,就往子类看

6、看子类HttpServletBean的doPost方法。

image.png

7、再看子类FrameworkServlet的doPost方法。

image.png

8、具体进入看如何处理请求

image.png
image.png

9、而DispatcherServlet作为子类

image.png
image.png

10、进入DispatcherServlet类的doService方法

image.png

11、进来发现,这个类还是很核心的类

image.png

得到请求的结构图如下

Spring MVC分发器源码深度剖析 - 图21image.gif

接下来可以在关键的时机打断点,如在某个真正的业务逻辑上打断点,看它是什么时候被执行,当被调用的时候就会停在断点处,然后根据调用栈就可以看它的调用结构。