@Value注解使用小技巧


大家都知道@Value注解是从spring的配置文件里读取配置并给指定属性赋值

在这里给大家介绍两个实际开发中可能会用到的场景:

1. @Value注解添加默认值

@Value("${max.num:3}")
private Integer maxNum;

如上所示, 如不能正确读取到配置文件的 max.num 属性, 则maxNum会赋予默认值3

2. @Value注解给静态变量赋值

@Value注解如果直接赋予静态变量的话,是无法成功赋值的,通过如下的一个小转换,可以实现赋值给静态变量

@Value("${max.num:3}")
private Integer maxNum;

public static int MAX_NUM;

@PostConstruct
public void init() {
    MAX_NUM= maxNum;
}