Spring Boot可以通过 @PropertySource, @Value, @Environment, @ConfigurationProperties 来绑定变量
1.读取application文件
key.value=123456
key.password=123456
@Value注解读取
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
public class ToolsConfilg{
@Value("${key.value}")
private String value;
@Value("${key.password}")
private String password;
//...GET\SET
}
@ConfigurationProperties注解读取
@Component
@ConfigurationProperties(prefix = "info")
public class ToolsConfilg{
private String key;
private String password;
//...GET\SET
}
读取指定文件
在 resources(资源目录)下建立 config/datasource-config.properties
datasource.username=root
datasource.password=root
@PropertySource+@Value注解读取 (@PropertySource不支持yml文件读取)
@Component
@PropertySource(value = { "config/datasource-config.properties" })
public class DatasourceConfig{
@Value("${datasource.username}")
private String username;
@Value("${datasource.password}")
private String password;
public String getUsername() {
....get/set
}
@PropertySource+@ConfigurationProperties注解读取
@Component
@ConfigurationProperties(prefix = "datasource")
@PropertySource(value = { "config/datasource-config.properties" })
public class DatasourceConfig{
private String username;
private String password;
...get/set
}
Environment读取
@Autowired
private Environment env;
// 获取参数
String getProperty(String key);