读取配置信息方式
@ConfigurationProperties是springboot提供读取配置文件的一个注解。其对应的bean的后置处理器为
@ConfigurationProperties注解支持属性文件和javabean的映射,而@Value支持spel表达式。
如果是多个属性映射,而且常常被复用,推荐使用@ConfigurationProperties,如果只读取单个属性则使用@Value要方便许多
读取配置文件(yml)中以mtcloud开头的配置信息
1.配置application.properties
#不同的服务器,地址不同
tencent.cos.file.region=ap-beijing
tencent.cos.file.secretid=你的id
tencent.cos.file.secretkey=你的key
#bucket可以在控制台创建,也可以使用java代码创建
tencent.cos.file.bucketname=你的bucketName
2.创建工具类
/**
* 常量类,读取配置文件application.properties中的配置
*/
@Component
public class ConstantPropertiesUtil implements InitializingBean {
@Value("${tencent.cos.file.region}")
private String region;
@Value("${tencent.cos.file.secretid}")
private String secretId;
@Value("${tencent.cos.file.secretkey}")
private String secretKey;
@Value("${tencent.cos.file.bucketname}")
private String bucketName;
public static String END_POINT;
public static String ACCESS_KEY_ID;
public static String ACCESS_KEY_SECRET;
public static String BUCKET_NAME;
@Override
public void afterPropertiesSet() throws Exception {
END_POINT = region;
ACCESS_KEY_ID = secretId;
ACCESS_KEY_SECRET = secretKey;
BUCKET_NAME = bucketName;
}
}
3.第二种方式@ConfigurationProperties
@Data
@Component
@ConfigurationProperties(prefix = "tencent.cos.file")
public class MTCloudAccountConfig {
private String region;
private String secretid;
private String secretkey;
private String bucketname;
}
本文介绍了SpringBoot中读取配置文件的两种方式:@ConfigurationProperties和@Value。@ConfigurationProperties适用于大量配置属性的映射,而@Value适合单个属性的读取。示例中展示了如何从application.properties读取以'tencent.cos.file'开头的配置,包括region、secretId、secretKey和bucketName,并在ConstantPropertiesUtil工具类中使用@Value注解进行赋值。另外,还提供了一个名为MTCloudAccountConfig的配置类,通过@ConfigurationProperties注解来绑定配置。
1万+

被折叠的 条评论
为什么被折叠?



