springboot虽然免除了绝大部分的配置文件设置,但是对于一些特定情况,还是有定义配置文件的需要。

一、配置文件的格式

SpringBoot可以识别.yml和.properties两种格式的配置文件。如果是自带classpath下的application.properties和application.yml,这两种都可以被SpringBoot自动识别并加载。

在application.properties,通过spring.profiles.active=xxx可以指定不同环境激活不同的配置文件,设置的激活参数dev, test, prod,对应的配置文件有:

application-dev.properties

application-test.properties

application-prod.properties

如果是自定义的配置文件,最好还是使用properties格式,因为SpringBoot中暂时还并未提供手动加载yml格式文件的功能。

二、自定义配置文件

1、自定义配置文件,如:
url.name=editMessage url.path=100120171116031838
2、定义获取配置文件的bean
@Component @ConfigurationProperties(prefix = "url")
@PropertySource("classpath:config.properties",encoding = "utf-8") @Data public
class PropertiesEnv { private String name; private String path; }
3、通过注入配置文件的Bean使用属性

@Autowired PropertiesEnv propertiesEnv ;

4、用@Value注解使用

5、使用Environment

先注入@Autowired private Environment env;

然后env.getProperty("url.name")

6、自实现PropertiesLoaderUtils

7、SpringBoot中使用@Value()只能给普通变量注入值,不能直接给静态变量赋值,如果要赋值给静态变量,可以使用

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信