暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Springboot多环境切换与打包

码酱 2020-09-15
3208

在实际开发与应用部署的时候,往往遇到需要发布到不同环境的情况,而每个环境的数据库信息、密钥信息等可能会存在差异。可能需要不断进行环境的切换和打包部署,今天我们来看看具体是怎么做的。


配置文件

在resources目录下创建多个环境的配置文件,分别命名bootstrap-dev.yml、bootstrap-prod.yml、bootstrap-test.yml,分别对应开发环境、生产环境、测试环境

  • bootstrap.yml与application.yml执行顺序

  • bootstrap.yml用来程序引导时执行,应用于更加早期配置信息读取,如可以使用来配置application.yml中使用到参数等

  • application.yml 应用程序特有配置信息,可以用来配置后续各个模块中需使用的公共参数等。

  • 加载顺序

    bootstrap.yml > application.yml > application-dev(prod).yml

目录结构如下

bootstrap.yml

server:
port: 7001
spring:
profiles:
active: dev

利用spring.profiles.active来指定对应的配置文件(生产、开发、测试)


bootstrap-dev.yml

spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/dev
username: dev
password: dev888


测试访问结果

helloController

@RestController
public class HelloController {
@Value("${spring.datasource.url}")
    private String url;
@GetMapping("show")
    public String test(){
return url;
}
}

启动

浏览器访问

这样如果我们需要切换不同环境的配置文件,只需要修改spring.profiles.active的值就行了。


maven打包

在pom.xml文件添加依赖

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
之前我们单独环境打包运用命令mvn clean package,现在也是一样,你想打什么环境的包,只需要将spring.profiles.active修改成对应的值就好。
例如这里我们需要打生产环境的包,只需要修改active为prod


然后运用命令

mvn clean package

打包成jar,在target目录下

我们来测试一下

可以看到我们启动的配置文件为prod

浏览器访问


总结

通过修改spring.profiles.active的值,可以轻松方便的多环境之间切换与打包,为我们的开发提高了效率。



如果您觉得本文对你有帮助,欢迎老铁们帮忙点赞、关注、留言、分享你们的支持是我原创最大的动力



文章转载自码酱,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论