application.yml配置文件中获取数据信息
当application.yml配置文件中存在数据信息如下所示时:
server:
port: 9191
servlet:
context-path: /start2
email:
user: 928335239@qq.com
code: sfiasngdkjeksl==
host: smtp.qq.com
auth: true
想要获取到其中email中的数据,我们可以使用以下两种方法实现:
1.@Value(“${参数组名}”)获取
在java文件代码中,可以通过在定义参数的上一行添加@Value(“${参数组名}”)来实现自动引用yml配置文件中该参数组下相同的参数名对应的值,例如如下代码:
@SpringBootApplication
public class SpringbootQuickstartApplication {
@Value("${email}")
public String user;
@Value("${code}")
public String code;
@Value("${host}")
public String host;
@Value("${auth}")
public String auth;
public static void main(String[] args) {
SpringApplication.run(SpringbootQuickstartApplication.class, args);
}
}
2.@ConfigurationProperties(prefix = “参数组名”)获取
为了避免大量重复编写@Value(“${}”),可以通过在定义类的上一行添加@ConfigurationProperties(prefix = “参数组名”)来实现自动引用yml配置文件中该参数组下相同的参数名对应的值,例如如下代码:
@SpringBootApplication
@ConfigurationProperties(prefix = "email")
public class SpringbootQuickstartApplication {
public String user;
public String code;
public String host;
public String auth;
public static void main(String[] args) {
SpringApplication.run(SpringbootQuickstartApplication.class, args);
}
}