微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring的bean定义信息注册流程

核心注解自查

注解 功能
@Bean 容器中注册组件
@Primary 同类组件如果有多个,标注主组件
@DependsOn 组件之间声明依赖关系
@Lazy 组件懒加载(最后使用的时候才创建)
@Scope 声明组件的作用范围(ScopE_PROTOTYPE,ScopE_SINGLetoN)
@Configuration 声明这是一个配置类,替换以前配置文件
@Component @Controller、@Service、@Repository
@Indexed 加速注解,所有标注了 @Indexed 的组件,直接会启动快速加载
@Order 数字越小优先级越高,越先工作
@ComponentScan 包扫描
@Conditional 条件注入
@Import 导入第三方jar包中的组件,或定制批量导入组件逻辑
注解 功能
@ImportResource 导入以前的xml配置文件,让其生效
@Profile 基于多环境激活
@PropertySource 外部properties配置文件和JavaBean进行绑定.结合ConfigurationProperties
@PropertySources @PropertySource组合注解
@Autowired 自动装配
@Qualifier 精确指定
@Value 取值、计算机环境变量、JVM系统。xxxx。@Value(“${xx}”)
@Lookup 单例组件依赖非单例组件,非单例组件获取需要使用方法

核心组件接口分析beanfactory

image-20220608005017359

beanfactory

  • Hierarchicalbeanfactory:定义父子工厂(父子容器)

  • ListableBeanFacotory:的实现是DefaultListablebeanfactory,保存了ioc容器中的核心信息

  • AutowireCapablebeanfactory:提供自动装配能力

  • AnnotationApplicationContext组合了档案馆,他有自动装配能力。

bean定义信息注册流程

BeanDefintion信息的注册

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐