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,烤肉串格式。

相关推荐
minglie17 小时前
高等代数试题
学习
Xiaofeng36938 小时前
GPT-5.6 发布后,我用了一个周末重新规划学习路线图
gpt·学习
其实防守也摸鱼8 小时前
运维--怎么看接口的请求和返回
运维·学习·网络安全·网络攻击模型·burpsuite·攻防对抗·蓝队
酷讯网络_2408701609 小时前
区块粮仓宠物NFT源码区块狗/抢购转让预约区块投资理财系统
学习·开源·宠物
疯狂打码的少年9 小时前
【软件工程】软件开发模型:增量模型与迭代模型
笔记·软件工程
Generalzy9 小时前
从本地 Demo 到生产级检索:Milvus 学习笔记(3)
笔记·学习·milvus
心中有国也有家10 小时前
AtomGit Flutter 鸿蒙客户端:ModalBottomSheet 实战
android·javascript·学习·flutter·华为·harmonyos
tyqtyq2211 小时前
求职信生成:AI 智能求职信撰写系统的鸿蒙实现
人工智能·学习·华为·生活·harmonyos
MartinYeung511 小时前
[论文学习]PrivacyLens:评估语言模型在行动中的隐私规范意识
人工智能·学习·语言模型
凉、介12 小时前
Virtio 系列(一):框架概览
笔记·学习·嵌入式·虚拟化·virtio