Spring Boot配置特定属性spring.profiles的方法

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

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

总结

以上所述是小编给大家介绍的Spring Boot配置特定属性spring.profiles,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • Spring Boot自定义配置属性源(PropertySource)

    配置覆盖优于profile 在生产实践中,配置覆盖是解决不同环境不同配置的常用方法.比如用生产服务器上的配置文件覆盖包内的文件,或者使用中心化的配置服务来覆盖默认的业务配置. 相比于profile机制(比如maven的profile.spring boot的profile-specific properties),即不同环境使用不同的配置文件,覆盖的方式更有优势.程序员在开发时不需要关心生产环境数据库的地址.账号等信息,一次构建即可在不同环境中运行,而profile机制需要将生产环境的配置写到项

  • Spring boot工具类静态属性注入及多环境配置详解

    由于需要访问MongoDB,但是本地开发环境不能直接连接MongoDB,需要通过SecureCRT使用127.0.0.2本地IP代理.但是程序部署到线上生产环境后,是可以直接访问MongoDB的,因此开发好程序后,总是要修改一下MongoDB服务器的IP才能提交代码,这样很是不方便. private static final String PUBCHAT_HOST = "127.0.0.2"; // private static final String PUBCHAT_HOST =

  • springboot如何读取配置文件(application.yml)中的属性值

    在spring boot中,简单几步,读取配置文件(application.yml)中各种不同类型的属性值: 1.引入依赖: <!-- 支持 @ConfigurationProperties 注解 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId>

  • 深入理解Spring Boot属性配置文件

    前言 相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能,还能实现快速开发的便捷.我们在Spring Boot使用过程中,最直观的感受就是没有了原来自己整合Spring应用时繁多的XML配置内容,替代它的是在pom.xml中引入模块化的Starter POMs,其中各个模块都有自己的默认配置,所以如果不是特殊应用场景,就只需要在application.properties中完成一些属性配置就能开启各模块的应用. 在之前的各篇文章中都有提及关于application.

  • Spring boot将配置属性注入到bean类中

    一.@ConfigurationProperties注解的使用 看配置文件,我的是yaml格式的配置: // file application.yml my: servers: - dev.bar.com - foo.bar.com - jiaobuchong.com 下面我要将上面的配置属性注入到一个Java Bean类中,看码: import org.springframework.boot.context.properties.ConfigurationProperties; import

  • Spring Boot配置特定属性spring.profiles的方法

    Spring Boot配置特定属性spring.profiles SpringBoot能使用application- {你的自定义profile名称myProfileName} .properties模式添加任何你指定配置文件到其属性文件. 要加载特定的配置文件属性文件,我们可以使用命令行选项-Dspring.profiles.active = myProfileName. 缺省默认SpringBoot是加载application.properties,无需任何-Dspring.profile.

  • 详解Spring Boot 配置加载顺序及属性加载顺序

    先给大家介绍下spring boot 配置加载顺序,具体内容如下所示: 使用 Spring Boot 会涉及到各种各样的配置,如开发.测试.线上就至少 3 套配置信息了.Spring Boot 可以轻松的帮助我们使用相同的代码就能使开发.测试.线上环境使用不同的配置. 在 Spring Boot 里面,可以使用以下几种方式来加载配置.本章内容基于 Spring Boot 2.0 进行详解. 1.properties文件: 2.YAML文件: 3.系统环境变量: 4.命令行参数: 等等-- 我们可

  • spring 和 spring boot 中的属性配置方式

    目录 在xml中注册属性文件 多个 通过java注解方式注册属性文件 使用及注入属性 属性搜索优先级 spring boot 属性加载 application.properties – 缺省属性文件 特定环境属性文件 特定测试属性文件 @TestPropertySource注解 层次属性 YAML 文件 命令行传入属性 环境变量属性 随机属性值 其他类型的属性源 spring配置实现 多层级上下文中属性加载 属性文件通过定义xml中 属性文件通过@PropertySource定义在java中 总

  • Spring boot配置绑定和配置属性校验的方式详解

    目录 配置绑定 先建立数据配置文件 application.yml @ConfigurationProperties @Value 第一种 @Value(“${}”) 第二种@Value(“#{}”) @PropertySource 配置属性校验 @Value 与 @ConfigurationProperties对比 1. 使用位置不同 2. 功能不同 3. 松散绑定支持不同 4. SpEL 支持不同 5. 复杂类型封装 6.属性校验 7. 应用场景不同 配置绑定 所谓配置绑定”就是把配置文件中

  • 通过Spring Boot配置动态数据源访问多个数据库的实现代码

    之前写过一篇博客<Spring+Mybatis+Mysql搭建分布式数据库访问框架>描述如何通过Spring+Mybatis配置动态数据源访问多个数据库.但是之前的方案有一些限制(原博客中也描述了):只适用于数据库数量不多且固定的情况.针对数据库动态增加的情况无能为力. 下面讲的方案能支持数据库动态增删,数量不限. 数据库环境准备 下面一Mysql为例,先在本地建3个数据库用于测试.需要说明的是本方案不限数据库数量,支持不同的数据库部署在不同的服务器上.如图所示db_project_001.d

  • spring boot配置MySQL数据库连接、Hikari连接池和Mybatis的简单配置方法

    此方法为极简配置,支持MySQL数据库多库连接.支持Hikari连接池.支持MyBatis(包括Dao类和xml文件位置的配置). 1.pom.xml中引入依赖: <!-- Begin of DB related --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId>

  • Spring boot中@Conditional和spring boot的自动配置实例详解

    我们知道,spring boot自动配置功能可以根据不同情况来决定spring配置应该用哪个,不应该用哪个,举个例子: Spring的JdbcTemplate是不是在Classpath里面?如果是,并且DataSource也存在,就自动配置一个JdbcTemplate的Bean Thymeleaf是不是在Classpath里面?如果是,则自动配置Thymeleaf的模板解析器.视图解析器.模板引擎 那个这个是怎么实现的呢?原因就在于它利用了Spring的条件化配置,条件化配置允许配置存在于应用中

  • Spring Boot配置元数据方法教程

    这篇文章主要介绍了Spring Boot配置元数据方法教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 前言 在编写 Spring Boot 应用程序时,将配置属性映射到 Java bean上是非常有用的.但是,记录这些属性的最好方法是什么呢? 在本教程中,我们将探讨 Spring Boot Configuration Processor和 关联的 JSON 元数据文件,该 JSON 文档记录每个属性的含义.约束等. 配置元数据 作为开发人员

  • 详解Spring Boot配置排序依赖技巧

    本文主要介绍了Spring Boot配置排序依赖技巧,分享给大家,具体如下: Spring Boot - 被错误使用的注解 我自己曾经在 Spring Boot 中集成通用 Mapper 时,写过下面的代码: @Configuration @AutoConfigureAfter(MyBatisConfig.class) public class MyBatisMapperScannerConfig { //其他 } 这种用法我参考的 mybatis-spring-boot-starter. 由于

  • 详解spring boot配置 ssl

    ssl协议位于tcp/ip协议与各种应用协议之间,为数据通信提供安全支持. ssl协议分为两层: ssl记录协议,它建立在可靠传输协议之上,为高层协议提供数据封装.压缩.加密等基本功能支持. ssl握手协议,它建立在ssl记录协议之上,用于实际数据传输开始前,通信双方进行身份认证.协商加密算法.交换加密密钥等 基于B/S的web应用,是通过https来实现ssl的.https是http的安全版,即在http下加入ssl层,https的安全基础是ssl: 我们开始在spring boot中使用ss

随机推荐