spring mvc <mvc:annotation-driven/> 和<context:component-scan base-package=""/>解释

来源:互联网 发布:安知玉如意百度云 编辑:程序博客网 时间:2024/06/03 02:09

1. <mvc:annotation-driven/> 为springmvc注解驱动

    可代替


<!-- 注解处理器映射器 -->
<bean
class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping">
</bean>




<!-- 注解适配器 -->
<bean
class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<!-- 在webBindingInitializer中注入自定义属性编辑器、自定义转换器 -->
<property name="webBindingInitializer" ref="customBinder"></property>
</bean>


的配置




2 <context:component-scan base-package=""/> 扫描器(如果有了扫描器,可以不加注解驱动

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/>了



0 0