`

标签<context:component-scan/><context:annotation-config/><mvc:annotation-driven/>

 
阅读更多
from: http://yimengzhu.iteye.com/blog/1599441


简单讲解Spring中的<context:component-scan /> <context:annotation-config /> 
<mvc:annotation-driven /> 这三者的作用


1 <context:annotation-config />
这个标签告诉Spring到bean类中寻找一些annotation定义的类,
这些annotation基本如下:
@Autowired  @PostConstruct  @PreDestroy  @Resource 等。
需要注意的是。这个标签并没有激活@Transactional 和 @TransactionAttribute

2 <context:component-scan base-package=""/>
这个标签用于告诉Spring搜索我们指定的包下面以及一些需要被自动注入的bean。
默认支持的annotation:@Component @Repository  @Service @Controller
需要注意的是:这个标签页实现了和annotation-config同样的效果。

3 <mvc:annotation-driven />
刚开始的时候我也很困惑为什么需要配置这个标签,但是当我们在配置SpringMVC的控制器的时候,我们发现有RequestMapping的存在,这个标签的作用之一就是告诉Spring去检测RequestMapping。其他的作用如下:
- 激活@ExceptionHandler这个annotation
- 配置了这个标签还可以将RequestMappingHandlerAdapter注册到Spring中
- 是SpringMVC提供默认的类型转化,因为我们没有在<mvc:annotation-driven/> 的属性中配置ConversionService
- 当然,这个标签还起到了一些其他的作用,我不怎么会翻译,怕变味。下面是英文原文:

It also enables the following:
1. Spring 3 style type conversion through a ConversionService instance in addition to the JavaBean PropertyEditors used for Data Binding.
2. Support for formatting Number fields using the @NumberFormat annotation through the ConversionService
3. Support for formatting Data,Calendar,Long and Joda Time fields using the @DateTimeFormat annotation, if Joda Time 1.3 or higher is present on the classpath.
4. Support for validating @Controller inputs with @Valid if a JSR-303 Provider is present on the classpath.
5. HttpMessageConverter support for @RequestBody method parameters and @ResponseBody method return values form @RequestMapping or @ExceptionHandler methods.
分享到:
评论

相关推荐

    spring mvc架构搭建,实现简单的查询用户查询功能

    &lt;mvc:annotation-driven/&gt; &lt;!-- 视图解析器配置 --&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/"/&gt; &lt;property name...

    集成springmvc spring hibernate的配置

    &lt;context:annotation-config /&gt; &lt;context:component-scan base-package="com.mvc.*"&gt; &lt;context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /&gt; &lt;/context:component...

    spring_MVC源码

    10. &lt;context:annotation-config /&gt; 11. &lt;!-- 把标记了@Controller注解的类转换为bean --&gt; 12. &lt;context:component-scan base-package="com.mvc.controller" /&gt; 13. &lt;!-- 启动Spring MVC的注解功能,...

    基于xml配置的spring mvc Helloworld实例

    &lt;mvc:annotation-driven /&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/" /&gt; &lt;property name="suffix" value=".jsp" ...

    springMVC框架搭建及详解

    &lt;mvc:annotation-driven/&gt; &lt;!-- 资源处理 --&gt; &lt;mvc:resources mapping="/resources/**" location="/WEB-INF/resources/"/&gt; &lt;!-- 其他自定义配置... --&gt; &lt;/beans&gt; ``` 通过以上步骤,可以成功搭建一个基于...

    springmvc+mybatis+oracle

    &lt;mvc:annotation-driven /&gt; &lt;!-- 扫描Controller所在的包 --&gt; &lt;context:component-scan base-package="com.example.controller" /&gt; &lt;!-- 自定义拦截器配置 --&gt; &lt;mvc:interceptors&gt; &lt;bean class=...

    SpringMVC+Hibernate全注解整合

    &lt;context:annotation-config/&gt; &lt;context:component-scan base-package="com.org.*" /&gt; &lt;bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property...

    SpringMVC知识点.doc

    &lt;mvc:annotation-driven/&gt; &lt;!-- 配置视图解析器 --&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/"/&gt; &lt;property name...

    Spring3中配置DBCP,C3P0,Proxool,Bonecp数据源

    &lt;context:component-scan base-package="com.mvc" /&gt; &lt;mvc:annotation-driven /&gt; &lt;mvc:resources mapping="/resources/**" location="/resources/" /&gt; &lt;mvc:default-servlet-handler /&gt; &lt;aop:config proxy-...

    简单SpringMVC环境搭建项目代码

    &lt;mvc:annotation-driven/&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/" /&gt; &lt;property name="suffix" value=".jsp" ...

    SSM三大框架的整合.docx

    &lt;mvc:annotation-driven /&gt; &lt;!-- 处理静态资源 --&gt; &lt;mvc:resources mapping="/resources/**" location="/resources/" /&gt; &lt;!-- 日志配置 --&gt; &lt;bean id="logbackConfigLocation" class="org.springframework.beans....

    SpringMVC环境搭建

    &lt;mvc:annotation-driven/&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/"/&gt; &lt;property name="suffix" value=".jsp"/&gt; ...

    SpringMvc项目配置实例

    &lt;mvc:annotation-driven /&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/" /&gt; &lt;property name="suffix" value=".jsp" ...

    java 小型环境搭建 SpringMVC

    &lt;mvc:annotation-driven /&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/" /&gt; &lt;property name="suffix" value=".jsp" ...

    SSH整合配置.doc

    &lt;tx:annotation-driven transaction-manager="transactionManager"/&gt; &lt;/beans&gt; ``` 以上配置仅为示例,实际项目中可能还需要根据具体需求进行调整和完善。整合SSH框架不仅需要正确配置上述文件,还需要处理好各...

    SSM框架整合

    &lt;mvc:annotation-driven/&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/"/&gt; &lt;property name="suffix" value=".jsp"/&gt; ...

    SpringMVC 配置 最简单的MAVEN hello world

    &lt;mvc:annotation-driven /&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/" /&gt; &lt;property name="suffix" value=".jsp" ...

    spring mvc基础

    &lt;mvc:annotation-driven/&gt; &lt;!-- 视图解析器配置 --&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/jsp/"/&gt; &lt;property name=...

    ssm 框架配置

    &lt;/context:component-scan&gt; ``` 这里配置了对`Controller`、`Service`和`Repository`注解的扫描,从而实现了对相应组件的自动装配。 #### 三、数据类型转换配置 在SSM框架中,数据类型转换主要是为了将前端传来的...

Global site tag (gtag.js) - Google Analytics