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

相关推荐
2301_796512524 小时前
Rust编程学习 - 如何利用代数类型系统做错误处理的另外一大好处是可组合性(composability)
java·学习·rust
清水4 小时前
Spring Boot企业级开发入门
java·spring boot·后端
koo3644 小时前
李宏毅机器学习笔记43
人工智能·笔记·机器学习
Q_Q5110082854 小时前
python+django/flask的校园活动中心场地预约系统
spring boot·python·django·flask·node.js·php
lkbhua莱克瓦244 小时前
Java基础——常用算法3
java·数据结构·笔记·算法·github·排序算法·学习方法
做一道光5 小时前
6、foc控制——IF控制
笔记·单片机·嵌入式硬件·电机控制
水冗水孚5 小时前
类比前端知识来学习Java的Spring Boot实现MySql的全栈CRUD功能——搭配Svelte+Vite
spring boot·svelte
moringlightyn5 小时前
进度条+ 基础开发工具----版本控制器git 调试器gdb/cgdb
笔记·git·其他·c·调试器·gdb/cgdb·进度条 倒计时
snakecy5 小时前
系统架构设计师学习大纲目录
学习·系统架构
im_AMBER5 小时前
React 15
前端·javascript·笔记·学习·react.js·前端框架