DefaultAnnotationHandlerMapping配置类和方法出现的问题

开始是为了实现一个全局的拦截器DefaultHandlerInterceptor,继承HandlerInterceptorAdapter类

并把这个类注入到Spring的DefaultAnnotationHandlerMapping的interceptors中

配置如:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<!-- 处理在类级别上的@RequestMapping注解 -->
< bean
     class = "org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" >
     < property name = "interceptors" >
     < list >
         <!-- 多个拦截器,顺序执行 -->
         < ref bean = "SpringMVCInterceptor" />
         < ref bean = "OpenSessionInViewInterceptor" />
     </ list >
     </ property >
</ bean >
<!-- 处理方法级别上的@RequestMapping注解 -->
< bean id = "annotationMethodHandlerAdapter"
     class = "org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" >
     < property name = "messageConverters" >
     < list >
         < bean
            class = "org.springframework.http.converter.StringHttpMessageConverter" >
            < property name = "supportedMediaTypes" >
             < list >
                 < value >text/html;charset=utf-8</ value >
                 < value >text/plain;charset=utf-8</ value >
             </ list >
            </ property >
         </ bean >
         < bean
             class = "org.springframework.http.converter.json.MappingJacksonHttpMessageConverterv2" >
             < property name = "objectMapper" >
                 < bean class = "net.pm.misc.Hibernate4AwareObjectMapper" />
             </ property >
         </ bean >
     </ list >
     </ property >
</ bean >
     
<!-- 表示使用cglib,而非JDK的动态代理,因为Controller没有实现接口,所以要配置这里 -->
< aop:aspectj-autoproxy proxy-target-class = "true"  />

 可是在DefaultHandlerInterceptor拦截器中,老是不进断点.

原因:

配置了<mvc:annotation-driven/>

这个配置声明

{没有 defaultAnnotationHandlerMapping这个属性,

对于@ResultMapping标签的解析,用 "org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping” 这个类来处理.}

所以要去掉<mvc:annotation-driven />,去掉其默认配置,

否则会实例化两个DefaultAnnotationHandlerMapping,并且不使用你配置的那个 DefaultAnnotationHandlerMapping.

 org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter与<mvc:annotation-driven />关系与上同理.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值