Spring Boot 2从入门到入坟 | 底层注解篇:@ConfigurationProperties配置绑定
程序员文章站
2024-01-09 18:07:28
...
在这篇文章中,我们再来说一个Spring Boot的底层注解,即@ConfigurationProperties。
@ConfigurationProperties注解出现的背景
我们还是举一个例子来说明吧!我们总是习惯于把经常爱变化的一些东西配到配置文件里面,比如我们小时候在学Java的时候,尤其是在数据库开发的时候,是不是经常要把数据库的连接信息,诸如数据库的url连接地址、账号、密码以及数据库连接池的大小等等,配到properties配置文件中啊!然后,未来等到我们需要创建数据库连接池时,再将properties配置文件里面的内容一一解析出来,接着就能创建数据库连接池了,其实呢,数据库连接池就是一个JavaBean,所以,总的来说,这个案例场景就是要把properties配置文件里面的所有配置绑定到JavaBean里面。
那么如何来实现这个绑定过程呢?如果我们还是使用Java原生代码来做,那么这还是挺麻烦的,大概代码就像是下面这样。
public class getProperties {
public static void main(String[] args) throws FileNotFoundException, IOException {
Properties pps = new Properties();
pps.load(new FileInputStream("a.properties"));
Enumeration enum1 = pps.propertyNames(); // 得到配置文件的名字
while(enum1.hasMoreElements()) {
String strKey = (String) enum1.nextElement();
String strValue = pps.getProperty(strKey);
System.out.println(strKey + "=" + strValue);
// 封装到JavaBean...
}
}
}
我们是使用Properties这个类来加载我们的配置文件的。然后,再来遍历配置文件里面的每一对key-value值,最后,再把这对对key-value值一一对应封装到JavaBean指定的属性里面。你是不是感觉写Java原生代码也能接受啊?小了,你格局小了!那是你没碰到复杂情况,如果要是别人给你的配置文件,里面乱七八糟,配置了100多行的东东,假设我要你在这100多行的配置里面找到跟数据库连接信息有关的配置,也就那么4、5行,那么这时你该怎么办?是不是有可能需要用到正则表达式等等一大堆的东西,你才可能解析完成啊!
但是,在Spring Boot里面,这个过程就会变得非常简单,而且我们会把这个过程称为配置绑定。
推荐阅读
-
apache 虚里目录的配置 求帮忙,该如何解决
-
springboot项目配置加密,项目安全
-
phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法_php技巧
-
Spring Boot 2从入门到入坟 | 底层注解篇:@ConfigurationProperties配置绑定
-
拆分为数组,难点是 C(x, y("z", 2, 0)), 是一个整体。
-
spring boot 中 获取配置文件中的值
-
怎么去掉Discuz X2的“快捷导航”菜单
-
Junit5单元测试的常用注解
-
Sublime Text 三应该怎样配置才适合编写PHP代码
-
同clientId多端登录下jwt+auth2+security使用RedisTokenStore刷新token后长token不可用:Invalid refresh token问题