SpringBoot-黑马程序员-学习笔记(五)

74.自定义bean属性绑定以及第三方bean属性绑定

自定义bean属性绑定

1.自定义一个bean

java 复制代码
@Data
@Component
public class ServerConfig {
    private String ipAddress;
    private int port;
    private  long timeout;
}

2.在yml配置文件中中定义一组值

3.在bean中进行属性绑定

加上这个注解即可

@ConfigurationProperties(prefix = "datasource") 注解:这个注解用于告诉 Spring Boot 从配置文件中读取属性,以配置 DruidDataSource 实例。prefix 参数指定了在配置文件中要读取的属性的前缀。这意味着 Spring Boot 将查找配置文件中以 "servers" 为前缀的属性

java 复制代码
@Data
@Component
@ConfigurationProperties(prefix = "servers")
public class ServerConfig {
    private String ipAddress;
    private int port;
    private  long timeout;
}

测试:

在main中获取容器,再调用容器的getBean方法获取到serverConfig类,再输出这个类

发现yml中配置的属性以及和bean绑定好了

第三方bean属性绑定

1.导入druid依赖(以druid为例)

2.在yml文件中写个属性

java 复制代码
datasource:
  driverClassName: com.mysql.jdbc.Driver456

3.绑定

75.@ConfigurationProperties的松散绑定

意思是用@ConfigurationProperties注解绑定了yml文件中的一个前缀后,该前缀下的属性名字的格式不需要很严谨,比如类里面的属性是heima-name,所绑定的文件中对应的属性可以叫heimaname,heimaName,HEIMANAME等,都是可以的。

还有就是用这个@ConfigurationProperties注解绑定属性的前缀时,格式只能是中划线加小写字母,名为kabab,烤肉串格式。

相关推荐
依然范特东25 分钟前
强化学习笔记6--IS、PPO、TD、DQN、Actor-Critic
笔记·算法
zzzll111126 分钟前
0基础入门大模型:一份清晰的学习路线图
人工智能·学习·chatgpt
CodeHackerBhx1 小时前
Spring Boot 4 防重复提交:从接口幂等到 Redis 分布式锁的完整实践
java·数据库·spring boot·redis·分布式
正经人_x1 小时前
学习日记48:DenseCLIP
学习
DevangLic2 小时前
monkeycode-使用说明
学习·ai
Mxzx品牌2 小时前
佛山招聘软件哪个好:【帅聘网】匹配度高
笔记·其他·生活
九硕智慧建筑一体化厂家2 小时前
无线动能开关|烘焙后厨防潮免布线照明控制方案
运维·笔记·智慧城市
red_redemption3 小时前
自由学习记录(211)
学习
ZZHow10243 小时前
PyTorch深度学习入门笔记(小土堆)P7-14
人工智能·pytorch·笔记·python·深度学习
用户3126874877203 小时前
Spring Bean 生命周期到底经历了什么?从实例化到销毁的全链路拆解
java·spring boot