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);