Springboot多环境配置

在一般的项目开发过程中,最简单的一般也有三个环境,比如 开发(dev)   测试(test)   生产(prod)环境 。

当然多的话还有 sit环境,预发环境,stable环境,沙箱环境等等......

下面介绍怎么应用springboot运用多环境配置:

一、项目结构

二、配置说明

application.properties 文件中配置全局配置,比如

1. 默认加载哪个环境的配置 

# 系统加载哪个环境的配置,此处加载dev环境 application-dev.properties 配置
spring.profiles.active=dev

2. 文件上传最大大小控制

3. mybatis 扫描xml目录等等

 

application-dev.properties 这类文件分别是各个环境的配置。比如第三方接口地址。

特点:各个环境中配置key应该都一样,只有每个配置项对应的value不同(因为不同的环境,对应不同的域名或者ip端口)。

 

三、maven配置

主pom下添加 profiles插件:

<!--默认执行dev环境配置-->
	<profiles>
		<profile>
			<!--dev环境-->
			<id>dev</id>
			<properties>
				<spring.active>dev</spring.active>
			</properties>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
		</profile>

		<profile>
			<!--test环境-->
			<id>test</id>
			<properties>
				<spring.active>test</spring.active>
			</properties>
		</profile>

		<profile>
			<!--prod环境-->
			<id>prod</id>
			<properties>
				<spring.active>prod</spring.active>
			</properties>
		</profile>
	</profiles>

四、idea中显示效果

三中添加完成后,idea显示如下:

五. 多环境配置启动

重点是下面执行语句中的环境配置项参数,代表启动测试环境(配置)      --spring.profiles.active=test

// jar包启动语句
java -jar mac-test-0.0.1-SNAPSHOT.jar --spring.profiles.active=test >> /var/log/mac-test.log 2>&1 &
 
说明:
spring.profiles.active=test :对应多环境配置的情况,test指的是测试环境,对应application-test.properties 配置文件,意思是运行测试环境的配置
 
/var/log/mac-test.log :指把程序运行的日志全部输出到/var/log 下 mac-test.log文件中。
一般项目都会配置日志框架,比如log4j等。启动会配置具体的日志输出路径。

六、问题

根据上述配置,发现通过勾选idea profiles中的环境执行的时候,一直执行的是默认dev配置,

怎么改都不生效?

解决方案:

因为你使用的是idea自带的maven工具,替换成你本地安装的maven即可。

 

 

以上

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值