1、简介
将配置文件映射到属性和实体类中。
2、配置文件映射类的属性
- application.properties配置文件
test.name=demo
- java类
@Controller
@PropertySource({"classpath:application.properties"}) //配置文件名称
public void contrller () {
@Value("${test.name}") //配置文件中的属性名称
private String name;
}
3、配置文件映射到实体类
- application.properties配置文件
test.username=root
test.password=123
@Component
@ConfigurationProperties(prefix="test")
@PropertySource(value="classpath:application.properties")
public class DataBaseConfig {
private String username
private String password;
}
4、常见问题:
- 配置文件注入失败,Could not resolve placeholder
解决:根据springboot启动流程,会有自动扫描包没有扫描到相关注解,默认Spring框架实现会从声明@ComponentScan所在的类的package进行扫描,来自动注入,因此启动类最好放在根路径下面,或者指定扫描包范围。 - 注入bean的方式,属性名称和配置文件里面的key一一对应,就不用加@Value这个注解。如果不一样,就要加@Value("${XXX}")。
网友评论