springBoot读取读取配置文件(yml)

读取配置信息方式

@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;
}

你可能感兴趣的:(java,spring,boot,java)