问题:使用配置文件的注解@Value后再构造代码块或构造方法中的值为null
public class ServiceImpl {
@Value("${xxx.xxx.xxx}")
public String url;
{
System.out.println(this.url); // 这里输出null
}
}
解决方法:改用有参构造方法实现
public ServiceImpl(@Value("${xxx.xxx.xx}") String url) {
this.url = url;
System.out.println("====");
System.out.println(this.url); // 这里有值的
}