前言
在java web开发过程中,正常情况下controller都是我们自己写的,我们可以很方便的定位到controller的位置。但是有些时候我们引入的其他依赖中可能也有controller,为了找到并方便的调试jar包中的controller,我们一般会进行全局搜索,但有时候这种方法会失效。下面我提供另一种思路来定位controller。
实现思路
我们都知道在spring mvc中所有的请求默认都会由DispatcherServlet类进行处理。这个类中的doDispatch会根据path找到对应的处理器(controller中的具体方法)。因此我们只需要在doDispatch中打断点就可以很清晰的观察到对应的controller是什么了。
示例
我们以swagger中的接口为例:
-
前端访问接口 http://127.0.0.1:8899/virtual-patient/v3/api-docs/default
-
后端在 DispatcherServlet 类的mappedHandler.applyPostHandle(processedRequest, response, mv);打断点即可。
总结
如果文档对您有帮助欢迎点赞收藏。