Spring Boot配置特定属性spring.profiles

SpringBoot能使用application- {你的自定义profile名称myProfileName} .properties模式添加任何你指定配置文件到其属性文件。

要加载特定的配置文件属性文件,我们可以使用命令行选项-Dspring.profiles.active = myProfileName。

缺省默认SpringBoot是加载application.properties,无需任何-Dspring.profile.active选项,或使用-Dspring.profiles.active = default来加载。默认属性文件也可以命名为application-default.properties。

默认配置文件application.properties中指定的任何属性将被你指定加载的配置文件中的的属性覆盖。

也可以在application.properties中指定激活配置文件。

spring.profiles.active=prod

比如你有三个配置文件:

src/main/resources/application.properties(默认的)

src/main/resources/application-dev.properties(你指定的dev)

src/main/resources/application-prod.properties(你指定的prod)

如果在application.properties中有:

spring.profiles.active=prod

那么SpringBoot将加载application-prod.properties内容。

如果你在代码中使用配置文件中的变量:

@Component
<b>public</b> <b>class</b> ClientBean {
  @Value(<font>"${app.window.width}"</font><font>)
  <b>private</b> <b>int</b> width;
  @Value(</font><font>"${app.window.height}"</font><font>)
  <b>private</b> <b>int</b> height;
</font>

如果application-prod.properties和application.properties都有app.window.width和app.window.height,那么以prod中配置的值为主。

spring.profile.include属性

在application-prod.properties还可以加入

spring.profiles.include=throttling,db

这是无条件地添加活动配置文件(以逗号分隔)。此属性添加的配置文件不会根据某些条件或命令行开关决定是否添加,而是始终无条件添加它们。

上述配置是就加载了:

src/main/resources/application-throttling.properties

src/main/resources/application-db.properties

这两个配置文件中的内容。

原文 

https://www.jdon.com/50600

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » Spring Boot配置特定属性spring.profiles

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址