springboot原理篇(二)

目录

二.bean的加载控制

2.1 bean的加载控制(编程式)

2.2 bean的加载控制(注解式)

2.2.1 匹配指定类

2.2.2 未匹配指定类

2.2.3 匹配指定类型的bean

2.2.4 匹配指定名称的bean

2.2.5 匹配指定环境

2.3 bean依赖的属性配置


二.bean的加载控制

2.1 bean的加载控制(编程式)

第一步:定义一个类,继承ImportSelector接口,在类中编写代码做bean的加载控制

 第二步:定义一个配置类,并使用注解@Import加载MyImportSelector类使其成为一个bean

 第三步:查看结果是否与第一步编写的代码设想的结果一致

2.2 bean的加载控制(注解式)

使用@Conditional注解的派生注解设置各种组合条件控制bean的加载。

以下只是@Conditional注解的派生注解的一小部分,开发中需要其他注解时可到网上查阅使用。

2.2.1 匹配指定类

此注解的含义是项目中存在Mouse类时,才会将Cat类加载为bean

2.2.2 未匹配指定类

当项目中存在Mouse类但不存在Wolf类时,才加载Cat类到spring容器中

2.2.3 匹配指定类型的bean

当spring容器中存在Mouse这个bean时,才加载Cat这个类到spring容器中 

2.2.4 匹配指定名称的bean

当spring容器中存在bean的id为jerry时,才加载Cat这个类到spring容器中 

2.2.5 匹配指定环境

当前环境必须是Web环境才加载Cat这个类到spring容器中 

2.3 bean依赖的属性配置

第一步:在配置类中做如下属性配置

第二步:将业务功能bean运行需要的资源抽取成独立的属性类(******Properties),设置读取配置文件信息

 第三步:定义业务功能bean,并使用@EnableConfigurationProperties注解设定使用属性类时加载bean。

CartoonCatAndMouse构造方法中代码的含义是,如果配置文件中配置了属性值,则采用配置文件中的属性值,如果没有配置文件中没有配置属性值,则采用代码中书写的默认值,这是springboot一个很重要的思想。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

真滴book理喻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值