springboot 属性配置
springboot项目中读取属性配置
属性配置文件,xxx.properties/xxx.yml
格式:可以写成yml形式,结构化,缩进表示层级,可以list和map,大小写敏感。注意:使用注解导入@PropertySource时不能使用yml格式
位置:放置的位置,项目根路径config文件夹,直接项目根路径下,类路径下的config文件夹,类路径下,优先级依次降低; 类路径就是src下面
使用:可以在项目启动时,命令指定配置文件, spring.config.location=
导入配置文件
使用@PropertySource注解,导入要读取的配置文件,如果配置文件的名字是application,则不需要导入,是自己命名的其他名字,需要使用此注解进行导入
属性的注入和使用
1)可以直接使用environment来获取属性,注入Environment;
2)直接@value来绑定属性值;
3)使用属性配置类;
属性类的配置
好处:安全,统一管理,支持复杂结构(而@Value相对有限)
使用@ConfigurationProperties注解,标识此类是属性配置类,可以使用@Component注册到Spring,可以装配到其他配置类或者bean中直接使用,如果属性配置类没有注册到Spring,在使用时需要使用@EnableConfigurationProperties注解使属性配置类生效
使用
另一种使用方式
此外,还可以使用构造方法注入等其他使用方式