[Spring]为什么配置了扫描器就不需要配置注解驱动了

在Spring的核心配置文件中,对注解扫描需要配置以下内容

    <!-- 注解驱动 -->
    <mvc:annotation-driven/>
    <!-- 扫描器 (ps:如果有了扫描器,可以不加注解驱动) -->
    <!-- base-package属性是指明Controller在哪个包中 -->
    <context:component-scan base-package="controller"></context:component-scan>

那么为什么配置了扫描器就不需要配置注解驱动了呢?

1><mvc:annotation-driven/>会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter 两个bean
        DefaultAnnotationHandlerMapping :负责扫描带有@Controller注解的类,给此类设置对应的@RequestMapping
        AnnotationMethodHandlerAdapter :负责扫描Controller类中的方法,给方法设置对应的@RequestMapping
2><context:component-scan base-package=""></context:component-scan>
        扫描器会扫描带有@Component@Service@Controller@Component等注解,并实现相应的操作,
        因为这四个注解包含了@Controller,
        所以会将Controller类和方法进行映射,不需要用<mvc:annotation-driven/>了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值