读取yml配置
Environment读取
Environment是spring框架用于获取环境信息的,如系统属性、环境变量、命令行参数、配置文件中定义的属性等等。
java
@Service
public class Test {
@Autowired
private Environment environment;
public void test() {
//对应在yml文件中的配置:
//wechat:
// appId: xxxxxxxxxxxxx
String var1 = environment.getProperty("wechat.appId");
System.out.println("Environment读取配置:" + var1);
}
}
@Value读取
适合简单场景下使用,如只读取少量或独立的配置时使用。
java
//直接注入即可,但注意注入的类也得受spring管理
@Value("${wechat.appId}")
private String appId;
@Value设置默认值
java
@Value("${wechat.appId:xxxxxxxx}")
private String appId;
@ConfigurationProperties读取
适合与实体类映射时使用,可以一次读取多个配置。
java
@Data
@Configuration
@ConfigurationProperties(prefix = "wechat")
public class WechatConfig {
//注意名字与配置一致
private String appId;
//注意名字与配置一致
private String appSecret;
}
//对应在yml文件中的配置:
//wechat:
// appId: xxxxxxxx
// appSecret: xxxxxxxx