注意:从spring boot 2.5 开始的特性
默认情况下,系统的环境变量会注入到spring环境中,可以通过如下方法来让指定前缀的环境变量注入到spring中:
package cn.edu.tju;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Start {
public static void main(String[] args) {
//SpringApplication.run(Start.class,args);
SpringApplication springApplication=new SpringApplication(Start.class);
springApplication.setEnvironmentPrefix("amadeus");
springApplication.run(args);
}
}
按照这种写法,自定义的系统环境变量中,只有amadeus.xxx会注入到spring.
比如controller中需要通过系统环境变量注入xyz这个变量,
@Value("${xyz}")
private String username;
则需要配置系统环境变量amadeus.xyz,否则启动报错