context:annotation-config/,context:component-scan/,mvc:annotation-driven/区分
鏈接:http://blog.csdn.net/baple/article/details/16864175
鏈接:http://blog.csdn.net/Baple/article/details/16864835
傳統的bean聲明:<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>
<context:annotation-config/>
向Spring容器注冊AutowiredAnnotationBeanPostProcessor,CommonAnnotationBeanPostProcessor,
PersistenceAnnotationBeanPostProcessor,RequiredAnnotationBeanPostProcessor這4個BeanPostProcessor。
注冊這4個BeanPostProcessor的作用,就是為了你的系統能夠識別相應的注解。
-對于其他沒有在spring容器中注冊的bean,它不能起到注冊bean的作用。
<context:component-scanbase-package=”xx.xx”/>
可以指定package掃描,
可以自動將帶有@Autowired,@component,@service,@Repository等注解的對象注冊到spring容器中的功能
隱式地在內部注冊了AutowiredAnnotationBeanPostProcessor和CommonAnnotationBeanPostProcessor
-因此當使用<context:component-scan/>后,除非需要使用PersistenceAnnotationBeanPostProcessor和RequiredAnnotationBeanPostProcessor兩個Processor的功能(例如JPA等)否則就可以將<context:annotation-config/>移除了。
<context:component-scanbase-package="com.baobaotao">
<context:include-filtertype="regex" expression="com\.baobaotao\.service\..*"/>
<context:exclude-filtertype="aspectj" expression="com.baobaotao.util..*"/>
</context:component-scan>
<mvc:annotation-driven/>標簽可簡化springmvc的相關配置,默認情況下其會創建并注冊實例:
DefaultAnnotationHandlerMapping:處理器映射器@Controller(默認注冊)
AnnotationMethodHandlerAdapter-:處理器適配器3.2之后換成了RequestMappingHandlerAdapter如下圖。
附一篇介紹該源碼的博客:http://blog.csdn.net/a67474506/article/details/46364159
StringHttpMessageConverter
ByteArrayHttpMessageConverter
XmlAwareFormHttpMessageConverter
SourceHttpMessageConverter。
FormattingConversionServiceFactoryBean-:ConversionService類型轉換
NumberFormatAnnotationFormatterFactory:@NumberFormat格式化
JodaDateTimeFormatAnnotationFormatterFactory::@DateTimeFormat格式化
LocalValidatorFactoryBean:@Valid數據校驗
?
來源:http://m.blog.csdn.net/blog/wzmmao/21990397#
總結
以上是生活随笔為你收集整理的context:annotation-config/,context:component-scan/,mvc:annotation-driven/区分的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编码时的一些普适原则
- 下一篇: 全选,不全选JS