Spring Boot
Spring Boot 默认的 HandlerAdapter 有:
RequestMappingHandlerAdapter,注解@RequestMappingHandlerFunctionAdapter,端点HttpRequestHandlerAdapter,用于一些静态资源SimpleControllerHandlerAdapter,用于Controller接口
AnnotationMethodHandlerAdapter是之前使用的一个,现在已经废弃
这些实现类需要关注的就是它们的方法:
1 | boolean supports(Object handler); |
RequestMappingHandlerAdapter
RequestMappingHandlerAdapter 是 AbstractHandlerMethodAdapter 的子类,父类也已经实现了 supports() 方法:
1 | public final boolean supports(Object handler) { |
该方法的返回值由两个条件决定:
- 第一个是 handler 是否是
HandlerMethod的实例。如果之前的 HandlerMapping 是RequestMappingHandlerMapping,那么它返回的一定是HandlerMethod。 - 第二个是由子类实现的
supportsInternal()方法,不过RequestMappingHandlerAdapter始终返回true
HttpRequestHandlerAdapter
一般用于适配静态资源请求
赏
使用支付宝打赏
使用微信打赏
若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏
扫描二维码,分享此文章