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

相关推荐
小雨凉如水8 分钟前
flutter 基础组件学习
学习·flutter
云边散步8 分钟前
godot2D游戏教程系列二(11)
笔记·学习·游戏·游戏开发
试试勇气18 分钟前
Linux学习笔记(十六)--进程信号
linux·笔记·学习
云边散步23 分钟前
godot2D游戏教程系列二(8)
笔记·学习·游戏·游戏开发
xhyyvr24 分钟前
VR科普学习一体机|开启智慧安全教育新时代
学习·安全·vr
Ama_tor30 分钟前
FLASK|完整版学习(ALL)
python·学习·flask
航Hang*30 分钟前
第2章:进阶Linux系统——第1节:配置与管理Samba服务器
linux·运维·服务器·笔记·学习
乐观勇敢坚强的老彭35 分钟前
本周C++编程课笔记:for循环练习
java·c++·笔记
HyperAI超神经35 分钟前
在线教程丨免费CPU资源快速部署,覆盖Qwen3.5/DeepSeek-R1/Gemma 3/Llama 3.2等热门开源模型
人工智能·深度学习·学习·机器学习·ai编程·llama·vllm
xuansec43 分钟前
【JavaEE安全】Spring Boot 安全实战:JWT 身份鉴权与打包部署
spring boot·安全·java-ee