SpringBoot读取yml/properties配置文件使用的@Value注解设置默认值

2022-10-08 941点热度 0人点赞 0条评论

在Spring Boot中,在读取yml或者properties的配置文件值,如果使用@Value注解对属性进行赋值,但如果在配置文件或启动参数中未指定对应的参数值,则会抛出异常。异常信息往往是对应注入属性的类实例化失败。

我们希望如果配置文件没有设置,能读到一个默认值,不会导致程序出错。

此时,需要对@Value对应的值进行配置,或设置默认值。设置方法如下:

@RestController
public class ConfigController {
    // ①未指定默认值
    @Value("${user.username}")
    private String username;


    // ②指定默认值为“unknown”
    @Value("${projectName:unknown}")
    private String projectName;
}

针对以上两个@Value的使用,如果username对应的属性值未在application.properties文件中配置或未在java -jar命令中传递参数,那么启动时将抛出异常。

而针对第二种方式,通过“:”指定如果获取不到该参数值时所使用的默认值,则启动时不会出现异常信息。

admin

这个人很懒,什么都没留下

文章评论

您需要 登录 之后才可以评论