springboot 多环境切换的方法
properties文件
profile是Spring对不同环境提供不同配置功能的支持,可以通过激活不同的环境版本,实现快速切换环境;
例如:
application-test.properties 代表测试环境配置
application-dev.properties 代表开发环境配置
但是Springboot并不会直接启动这些配置文件,它默认使用application.properties主配置文件;
我们需要通过一个配置来选择需要激活的环境:
spring.profiles.active=dev
spring.profiles.active可以指定配置环境,如指定为dev就会选择 application-dev.properties 文件作为配置环境,同理,要指定不同的环境配置,只需指定application-xxx.properties的xxx即可。
如此时创建不同的配置文件
在主配置文件中加入spring.profiles.active=dev,
在 application-dev.properties 中加入:
server.port=8081
在 application-test.properties 中加入
server.port=8082
启动项目,可以看到端口设置为了8081
springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件:
优先级1:项目路径下的config文件夹配置文件 file: ./config/
优先级2:项目路径下配置文件:file: ./
优先级3:资源路径下的config文件夹配置文件 classpath: ./config/
优先级4:资源路径下配置文件: classpath: ./ ----------默认创建application.properties的地方
yaml文件
yaml文件切换配置环境与properties文件有所不同,它可以在同一个文件中配置多套环境,只要给每套环境设置名称,在主配置环境中指定即可:
server: port: 8081 #选择要激活那个环境 spring: profiles: active: test --- server: port: 8083 spring: profiles: dev #配置环境的名称 --- server: port: 8084 spring: profiles: test #配置环境的名称
测试就发现启动端口是8084,切换环境成功
两种配置方式的比较
1. Properties配置多环境,需要添加多个配置文件,YAML只需要一个配件文件
yml文件本身具有区分不同环境的能力
2.书写格式的差异,yaml相对比较简洁,优雅
3. YAML的缺点:不能通过@PropertySource注解加载。如果需要使用@PropertySource注解的方式加载值,那就要使用properties文件。
到此这篇关于springboot 多环境切换的方法的文章就介绍到这了,更多相关springboot 多环境切换 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringBoot整合Redis使用@Cacheable和RedisTemplate
本文主要介绍了SpringBoot整合Redis使用@Cacheable和RedisTemplate,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-07-07SpringBoot+MyBatisPlus对Map中Date格式转换处理的方法详解
在 SpringBoot 项目中, 如何统一 JSON 格式化中的日期格式。本文将为大家介绍一种方法:利用MyBatisPlus实现对Map中Date格式转换处理,需要的可以参考一下2022-10-10SpringBoot+WebSocket实现IM及时通讯的代码示例
项目中碰到需要及时通讯的场景,使用springboot集成websocket,即可实现简单的及时通讯,本文介绍springboot如何集成websocket、IM及时通讯需要哪些模块、开发和部署过程中遇到的问题、以及实现小型IM及时通讯的代码,需要的朋友可以参考下2023-10-10
最新评论