SpringBoot 中使用 @Value 为 static 变量赋值
例如:
public class Utils {
@Value("${test.host}")
private static String host;
@Value("${test.port}")
private static String port;
}
直接使用 @Value 为静态变量赋值是不行的,可以使用 set 方法:
@Component
public class Utils {
private static String host;
@Value("${test.host}")
public void setHost(String host) {
Utils.host = host;
}
private static String port;
@Value("${test.port}")
public void setPort(String port) {
Utils.port = port;
}
}
注意,需要使用 @Component 注解。