关于BeanDefinitionReader接口特性请看这里

注:ConfigurationClassBeanDefinitionReader修饰符是default,所以在我们自己的类中是提示不出来的,只在和它同包的其他类中使用

切记,这个类并不是BeanDefinitionReader接口的子类,虽然名字很像,以及里面的方法很像,这点,在ConfigurationClassBeanDefinitionReader类注释中有说明,它说BeanDefinitionReader接口是对Resource的操作,而ConfigurationClassBeanDefinitionReader是对configuration class的操作,而且BeanDefinitionReader很早很早之前就出现了

作用:将ConfigurationClass(模型类)变成BeanDefinition,注册到BeanDefinitionRegistry当中
方法解释
1.loadBeanDefinitionsForConfigurationClass
根据模型类的条件不同,所以转换成不同的BeanDefinition
2.loadBeanDefinitionsFromRegistrars

private void loadBeanDefinitionsFromRegistrars(Map<ImportBeanDefinitionRegistrar, AnnotationMetadata> registrars) {for (Map.Entry<ImportBeanDefinitionRegistrar, AnnotationMetadata> entry : registrars.entrySet()) {// entry.getValue()会获取到AspectJAutoProxyRegistrar类// 该类会判断EnableAspectJAutoProxy注解,若存在该注解,则创建AnnotationAwareAspectJAutoProxyCreatorentry.getKey().registerBeanDefinitions(entry.getValue(), this.registry);}}

此处会判断ConfigurationClass类上是否有@EnableAspectJAutoProxy注解,如果有,则创建AnnotationAwareAspectJAutoProxyCreator类并且注入到容器中

时机:在ConfigurationClassPostProccessor的接口方法processConfigBeanDefinitions中,该方法中不但new了ConfigurationClassBeanDefinitionReader,并且调用ConfigurationClassBeanDefinitionReader的方法loadBeanDefinitions

Spring-context-ConfigurationClassBeanDefinitionReader类相关推荐

  1. java spring context_java将对象注册到spring context中 | 学步园

    很多时候需要从spring中取出相应的对象,很多时候又需要将对象注入到spring context中. 小卒碰到了这样的问题.在构件中有DAO. 其他构件需要复用这个DAO,但是连接配置各不相同,并且 ...

  2. 17、Spring Boot普通类调用bean【从零开始学Spring Boot】

    转载:http://blog.csdn.net/linxingliang/article/details/52013017 我们知道如果我们要在一个类使用spring提供的bean对象,我们需要把这个 ...

  3. Spring context:component-scan代替context:annotation-config

    Spring context:component-scan代替context:annotation-config XML: <?xml version="1.0" encod ...

  4. Spring JDBC-NamedParameterJdbcTemplate模板类

    概述 示例 BeanPropertySqlParameterSource 使用示例 MapSqlParameterSource使用示例 NamedParameterJdbcTemplate 支持 in ...

  5. spring管理的类如何调用非spring管理的类

    spring管理的类如何调用非spring管理的类. 就是使用一个spring提供的感知概念,在容器启动的时候,注入上下文即可. 下面是一个工具类. 1 import org.springframew ...

  6. spring boot 启动类

    做项目用到spring boot 感觉spring boot用起来比较流畅.想总结一下,别的不多说,从入口开始. spring boot启动类Application.class 不能直接放在main/ ...

  7. Arthas实践--获取到Spring Context,然后为所欲为

    背景 Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱. https://github.com/alibaba/arthas Arthas提供了非常丰富的关于调用拦截的命令,比如 ...

  8. java 普通类request_[Java教程]spring在普通类中获取session和request

    [Java教程]spring在普通类中获取session和request 0 2014-08-12 08:01:13 在使用spring时,经常需要在普通类中获取session,request等对像. ...

  9. SSM框架笔记08:初探Spring——采用配置类与注解方式

      初探Spring--采用配置类与注解方式   在上一讲的项目基础上继续.   不仅采用注解方式,而且用配置类替换Spring配置文件.   1.将xml_annotation包里的两个接口和四个类 ...

  10. Spring源码系列- Spring Beans - 核心类的基本介绍

    Spring源码系列- Spring Beans - 核心类的基本介绍 读过上一篇文章的读者应该都能对Spring的体系结构有一个大致的了解,在结尾处,我也说过会从spring-beans包开始分析, ...

最新文章

  1. 11门满分、10门99分、47门超95分……他却说自己是“学zha”
  2. BNU44583——Star Trek: First Contact——————【01背包】
  3. 浅谈ASP.NET的内部机制(二)
  4. STC51-数码管显示
  5. 32位linux时间戳,32位unix时间戳哪一年用尽
  6. Scala 类型、数值类型及类型转换
  7. FINEMVC重定向和显示合计
  8. 用UltraISO制作CentOS的DVD光盘启动盘 安装系统
  9. 制作动态微信二维码名片python
  10. Python学习笔记—— 面向对象4.类属性、类方法、静态方法
  11. 数学建模——时间序列预测(股价预测)
  12. 电力-涌流抑制与谐波
  13. 爱一个人,爱到八分最相宜
  14. SpringBoot整合SpringDataElasticSearch 完成地理搜索 附近人搜索 距离搜索
  15. 一位台湾学校校长的演讲
  16. [BJDCTF 2nd]燕言燕语-y1ng解析
  17. OpenCV-Python 级联分类器训练 | 六十三
  18. 10.1日NOIP模拟赛
  19. Openresty宏观概述笔记
  20. LA@线性方程组解的结构@Cramer法则@高斯消元法

热门文章

  1. 随着电子计算机的应用 会计信息保存的形式,会计信息功系统简答题.doc
  2. springMVC ---- 异步调用
  3. php线程安全和非线程安全_安全调用线程的步骤
  4. RabbitMQ各个参数含义
  5. GeoTools使用之JTSFactoryFinder接口
  6. SpringBoot配置文件映射到JavaBean
  7. java spark yarn_《Spark官方文档》在YARN上运行Spark
  8. JavaScript设计模式-工厂方法模式
  9. 使用esp8266制作wifi干扰器
  10. js打开新窗口的两种方式