springboot读取配置文件的两种方式
程序员文章站
2024-03-02 18:39:10
...
方式一:读取application.properties配置文件中的属性值
在application.yml中添加字段
test.name=kelly
test.password=admin123
读取属性直接使用注解进行调用
@Value("${test.name}")
private String name;
@Value("${test.password}")
private String password;
方式二:使用java bean的方式读取自定义配置文件 define.properties
在application.yml中配置相应的字段
my:
name: forezp
age: 12
number: ${random.int}
uuid : ${random.uuid}
max: ${random.int(10)}
value: ${random.value}
greeting: hi,i'm ${my.name}
然后使用Java Bean对数据进行封装,使用时候注入bean就可以
@ConfigurationProperties(prefix = "my")
@Component
@Data
public class ConfigBean {
private String name;
private int age;
private int number;
private String uuid;
private int max;
private String value;
private String greeting;
}
注意
在读取配置文件的时候默认读取的配置文件是application.*,想使用自己自定义的配置文件需要添加@PropertySource注解
@Component
@ConfigurationProperties(prefix = "she")
/**
* 这里的参数必须使用驼峰命名法,全部小写
*/
@PropertySource(value = "classpath:define.properties")
其次就是@ConfigurationProperties注解指定的属性前缀必须是小写
区别
第一种使用起来相对来说比较灵活,但是代码的耦合度相对来说比较冗余,因此第二种直接将配置文件的属性值直接封装为一个类,更能体现java语言的本身特性,维护起来相对来说比较容易