SpringBoot中请求响应源码解析(SpringMVC的DispatcherServlet.java)

本文深入解析SpringBoot中的请求响应处理,重点在于SpringMVC的DispatcherServlet.java的doDispatch方法。通过断点调试,详细阐述了handler的选择过程,包括从5种handlerMapping中选择合适的Mapping,以及如何进行@RequestMapping的匹配,最终找到并返回handlerMethod。

SpringBoot中请求响应源码解析(就是SpringMVC)

1、定位到DispatcherServlet.java的doDispatch()方法。

2、断点定位于此处。第一处断点决定handler是哪一个。第二处断点决定采用的handler适配器是哪一个。

(1)在第一处断点step into进入DispatcherServlet.java的getHandler方法,并且可以看到this.handlerMappings的size=5。

5种handlerMapping如下图:

点开RequestMappingHandlerMapping 可以看到注册中心中记录了所有12个具体RequestMapping 。

(2)在该段代码step into查看如何匹配

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值