码迷,mamicode.com
首页 > 编程语言 > 详细

spring拦截器不拦截方法名原因

时间:2019-12-21 13:19:30      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:来替   注解   拦截器   完全   直接   map   exce   替换   扩展   

开发一个基于注解的登录拦截器,遇到拦截器只能拦截controller不能拦截到具体的方法名,这样拦截器就完全没用,经过仔细摸索,DefaultAnnotationHandlerMapping和AnnotationMethodHandlerAdapter并不支持拦截方法,发现只有3.1版本后才支持,而且需要使用RequestMappingHandlerMapping 和 RequestMappingHandlerAdapter来替换 ,也可以直接通过引入annotation-driven使用,然后你就会发现拦截器拦截方法名了,也就可以扫描到注解了

 

一下是几个关键版本的变更信息

spring2.5后
需要通过处理器映射DefaultAnnotationHandlerMapping和处理器适配器AnnotationMethodHandlerAdapter来开启支持@Controller 和 @RequestMapping注解的处理器。


Spring3.1使用
新的HandlerMapping 和 HandlerAdapter来支持@Contoller和@RequestMapping注解处理器。
新的@Contoller和@RequestMapping注解支持类:处理器映射RequestMappingHandlerMapping 和 处理器适配器RequestMappingHandlerAdapter组合来代替Spring2.5开始的处理器映射DefaultAnnotationHandlerMapping和处理器适配器AnnotationMethodHandlerAdapter,提供更多的扩展点。



在spring mvc 3.1中,对应变更为 
DefaultAnnotationHandlerMapping -> org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping 
AnnotationMethodHandlerAdapter -> org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter 
AnnotationMethodHandlerExceptionResolver -> ExceptionHandlerExceptionResolver 


以上都在使用了annotation-driven后自动注册

spring拦截器不拦截方法名原因

标签:来替   注解   拦截器   完全   直接   map   exce   替换   扩展   

原文地址:https://www.cnblogs.com/zzt-lovelinlin/p/12076464.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!