-
使用 Environment 对象 读取application.properties
@Autowired
private Environment env;
@GetMapping("/property")
public String getPropertyValue()
{
String keyValue = env.getProperty("properties里的属性名");
return keyValue;
}
-
使用 @Value 注释 读取属性 。 (亲测可用)
@Value("${properties里的属性名}")
private String 属性名;
/**
*方法里直接使用
*/
public Result save(){
return 属性名;
}
-
使用@ConfigurationProperties 从application.properties文件中读取属性
在Spring Boot应用程序中读取应用程序属性的另一种方法是使用@ConfigurationProperties。 为此,我们需要创建一个Plain Old Java Object,其中每个类字段与属性文件中的键名称相匹配。
例如,假设我们有相同的application.properties文件:
app.title=Learning Spring Boot
app.description=Working with properties file因为每个属性名称都以 app 的前缀开头,所以 我们需要注释我们的Java Bean:
@ConfigurationProperties("app")
以下是使用@ConfigurationProperties批注注释的Java类的示例:
@Component @ConfigurationProperties("app") public class AppProperties { private String title; private String description; public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } }要在Rest Controller或Service类中使用此类,我们只需使用@Autowired注释对其进行自动装配。
一旦我们有了AppProperties类的实例,我们就可以使用getter来获取存储在application.properties文件中的属性的值。