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
傳統(tǒng)的bean聲明:<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>
<context:annotation-config/>
向Spring容器注冊(cè)AutowiredAnnotationBeanPostProcessor,CommonAnnotationBeanPostProcessor,
PersistenceAnnotationBeanPostProcessor,RequiredAnnotationBeanPostProcessor這4個(gè)BeanPostProcessor。
注冊(cè)這4個(gè)BeanPostProcessor的作用,就是為了你的系統(tǒng)能夠識(shí)別相應(yīng)的注解。
-對(duì)于其他沒有在spring容器中注冊(cè)的bean,它不能起到注冊(cè)bean的作用。
<context:component-scanbase-package=”xx.xx”/>
可以指定package掃描,
可以自動(dòng)將帶有@Autowired,@component,@service,@Repository等注解的對(duì)象注冊(cè)到spring容器中的功能
隱式地在內(nèi)部注冊(cè)了AutowiredAnnotationBeanPostProcessor和CommonAnnotationBeanPostProcessor
-因此當(dāng)使用<context:component-scan/>后,除非需要使用PersistenceAnnotationBeanPostProcessor和RequiredAnnotationBeanPostProcessor兩個(gè)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/>標(biāo)簽可簡(jiǎn)化springmvc的相關(guān)配置,默認(rèn)情況下其會(huì)創(chuàng)建并注冊(cè)實(shí)例:
DefaultAnnotationHandlerMapping:處理器映射器@Controller(默認(rèn)注冊(cè))
AnnotationMethodHandlerAdapter-:處理器適配器3.2之后換成了RequestMappingHandlerAdapter如下圖。
附一篇介紹該源碼的博客:http://blog.csdn.net/a67474506/article/details/46364159
StringHttpMessageConverter
ByteArrayHttpMessageConverter
XmlAwareFormHttpMessageConverter
SourceHttpMessageConverter。
FormattingConversionServiceFactoryBean-:ConversionService類型轉(zhuǎn)換
NumberFormatAnnotationFormatterFactory:@NumberFormat格式化
JodaDateTimeFormatAnnotationFormatterFactory::@DateTimeFormat格式化
LocalValidatorFactoryBean:@Valid數(shù)據(jù)校驗(yàn)
?
來源:http://m.blog.csdn.net/blog/wzmmao/21990397#
總結(jié)
以上是生活随笔為你收集整理的context:annotation-config/,context:component-scan/,mvc:annotation-driven/区分的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编码时的一些普适原则
- 下一篇: s3c2440移植MQTT