在基于主机方式配置Spring的配置文件中,你可能会见到<context:annotation-config/>这样一条配置,他的作用是式地向 Spring 容器注册

AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、

PersistenceAnnotationBeanPostProcessor 以及 RequiredAnnotationBeanPostProcessor 这 4 个BeanPostProcessor。

注册这4个 BeanPostProcessor的作用,就是为了你的系统能够识别相应的注解。

例如:

如果你想使用@Autowired注解,那么就必须事先在 Spring 容器中声明 AutowiredAnnotationBeanPostProcessor Bean。传统声明方式如下:

  1. <bean class="org.springframework.beans.factory.annotation. AutowiredAnnotationBeanPostProcessor "/>

如果想使用@ Resource 、@ PostConstruct、@ PreDestroy等注解就必须声明CommonAnnotationBeanPostProcessor

如果想使用@PersistenceContext注解,就必须声明PersistenceAnnotationBeanPostProcessor的Bean。

如果想使用 @Required的注解,就必须声明RequiredAnnotationBeanPostProcessor的Bean。同样,传统的声明方式如下:

  1. <bean class="org.springframework.beans.factory.annotation.RequiredAnnotationBeanPostProcessor"/>

一般来说,这些注解我们还是比较常用,尤其是Antowired的注解,在自动注入的时候更是经常使用,所以如果总是需要按照传统的方式一条一条配置显得有些繁琐和没有必要,于是spring给我们提供<context:annotation-config/>的简化配置方式,自动帮你完成声明。

不过,呵呵,我们使用注解一般都会配置扫描包路径选项

  1. <context:component-scan base-package=”XX.XX”/>

该配置项其实也包含了自动注入上述processor的功能,因此当使用 <context:component-scan/> 后,就可以将 <context:annotation-config/> 移除了。

Spring配置项context:annotation-config/解释说明相关推荐

  1. nacos 配置动态刷新_使用 Spring Cloud Alibaba Nacos Config 作为配置中心

    什么是 Nacos Config 在分布式系统中,由于服务数量巨多,为了方便服务 配置文件统一管理,实时更新,所以需要分布式配置中心组件. Spring Cloud Alibaba Nacos Con ...

  2. Spring Cloud Context

    目录 概述 EnableAutoConfiguration ApplicationListener RestartListener BootstrapApplicationListener 创建boo ...

  3. Spring 使用context:annotation-config的设置

    Spring 使用context:annotation-config的设置: 还是需要声明Bean的,并且还可能自己定义Annotation: xml: <?xml version=" ...

  4. spring中context:property-placeholder标签详解

    spring中context:property-placeholder标签的使用说明 1,有些参数在某些阶段中是常量. 在开发阶段我们连接数据库时的url,username,password等信息 分 ...

  5. Spring Cloud 参考文档(Spring Cloud Context:应用程序上下文服务)

    Spring Cloud Context:应用程序上下文服务 Spring Boot有一个关于如何使用Spring构建应用程序的观点,例如,它具有通用配置文件的常规位置,并具有用于通用管理和监控任务的 ...

  6. Spring配置 context:component-scan/ mvc:annotation-driven /

    <annotaion-driven/>标签: 这个标签对应的实现类是org.springframework.web.servlet.config.AnnotationDrivenBeanD ...

  7. (转)Spring对注解(Annotation)处理源码分析1——扫描和读取Bean定义

    1.从Spring2.0以后的版本中,Spring也引入了基于注解(Annotation)方式的配置,注解(Annotation)是JDK1.5中引入的一个新特性,用于简化Bean的配置,某些场合可以 ...

  8. 已解决org.springframework.context.annotation.ConflictingBeanDefinitionException异常的正确解决方法,亲测有效!!!

    已解决org.springframework.context.annotation.ConflictingBeanDefinitionException异常的正确解决方法,亲测有效!!! 文章目录 报 ...

  9. org.springframework.context.annotation.ConflictingBeanDefinitionException异常处理

    问题描述: 项目启动时,报了这个错: org.springframework.context.annotation.ConflictingBeanDefinitionException:标记为Bean ...

最新文章

  1. noip搜索模拟题 骰子
  2. [云炬创业基础笔记]第一章创业环境测试9
  3. Gitee Pages 静态网页托管服务
  4. 滑动窗口算法学习(一)
  5. 「hadoop」cdh5.12离线安装(未完成)
  6. 9206-1117-课堂笔记
  7. 写好规范 Java 代码去大厂!
  8. 今天学得有点多——end用法
  9. MySQL 锁(行锁、表锁、页锁、乐观锁、悲观锁等)
  10. matlab中dfft,2-DFFT 该实验的目的是开发一个 2-D FFT程序包 联合开发网 - pudn.com
  11. printer: PJL
  12. Xenu Link Sleuth
  13. iOS 16老机型落幕:iPhone 7、iPhone 6S和iPhoneSE 2016无法更新
  14. ABAP 创建及修改采购申请
  15. 武汉大学计算机学院学生工作处,学生工作部
  16. Unity Accelerator本地服务器加速Unity项目资源载入速度
  17. python 小说 小说_python潇湘书院网站小说爬虫
  18. mac启动idea后显示“idea”意外退出
  19. 企业品牌之电子杂志营销解决方案
  20. 流氓软件,终于被爆出来了

热门文章

  1. 全国计算机二级公共知识点,全国计算机二级公共基础知识知识点
  2. html怎么播放下一首,javascript – HTML5音频播放列表 – 第一个结束后如何播放第二个音频文件?...
  3. c语言程序设计算机基础知识,2018春C语言程序设计(合肥工业大学)
  4. php js 循环对象属性,js 遍历对象的属性的代码_javascript技巧
  5. win7无法连接打印机拒绝访问_“Windows无法连接打印机,操作失败,错误为0x000003e3”...
  6. jQuery 遍历:思路总结,项目场景中如何处理/控制获取的 each 遍历次数?
  7. Ubuntu设置root登录
  8. html引入百度地图报错,vue引入百度地图BMapGL,或者其他个性化地图
  9. elemntui icon 大小_自定义elementui中的图标
  10. HTML5链接tcpUDP,UDP/TCP协议 网络调试工具源码(C#)