龙哥网

龙哥网

SpringBoot框架实现切换启动开发环境和测试环境_java(springboot测试生产环境切换)
2022-03-01

目录
  • SpringBoot框架切换启动开发环境和测试环境
    • 目录结构
    • 1.在pom.xml文件中添加插件
    • 2.添加配置文件application.yml
    • 3.添加测试环境的配置文件application-test.yml
    • 4.将项目打包成jar包的快捷方式
  • SpringBoot动态切换环境
    • 1、我们在springboot的pom.xml中添加项目中的环境配置
    • 2、环境配置完成之后我们有三套环境

SpringBoot框架切换启动开发环境和测试环境

目录结构

1.在pom.xml文件中添加插件

<profiles>
	 <profile>
        <id>dev</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <profileActive>dev</profileActive>
        </properties>
    </profile>
    <profile>
        <id>test</id>
        <properties>
            <profileActive>test</profileActive>
        </properties>
    </profile>
    <profile>
        <id>prod</id>
        <properties>
            <profileActive>prod</profileActive>
        </properties>
    </profile>
</profiles>

<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

注意:

<activation>
   <activeByDefault>true</activeByDefault>
</activation>

放在dev下,默认以开发环境启动,如上所示;如果想以测试环境启动,把以上代码剪切到test下即可

2.添加配置文件application.yml

用于后期查看是使用哪种环境启动的项目

3.添加测试环境的配置文件application-test.yml

将数据库、dubbo、redis的开发地址,切换成测试地址即可。

4.将项目打包成jar包的快捷方式

我们将项目打包成jar包,将包含启动文件(BmsApplication)的子项目(scm-bms-starter)进行打包即可

这就是我们想要的jar包

下面我们测试一下,jar包是否可以运行

首先,在cmd中,将目录切换到jar包的存放路径

然后,运行jar包

命令1:java -jar scm-bms-starter-0.0.1-SNAPSHOT.jar(windows)

命令2:nohup java -jar scm-bms-starter-0.0.1-SNAPSHOT.jar &(linux)

两者的区别:

命令1会将启动过程在控制台输出,当关闭cmd的时候,进程自动被杀死

命令2会在后台启动项目,并将启动过程输入到一个默认的文件中(nohup.out),该进程不会随着控制台的关闭而结束,需要使用kill -15 pid杀死进程

SpringBoot动态切换环境

一般我们在开发中会有 开发、测试、预生产、生产环境的分类,这个时候我们会遇到在项目部署打包的时候需要动态的去切换环境,怎样去实现动态环境的切换呢?好了,废话不多说直接整干货。

1、我们在springboot的pom.xml中添加项目中的环境配置

如图

我们这边先简单介绍三套环境的切换,如图所示,当我们添加三套环境的profile配置之后,我们的第一阶段的任务就完成了,即环境的配置。

2、环境配置完成之后我们有三套环境

我们需要copy出三份application-xxx.properties文件出来,放在springboot默认配置application.properties的同级目录下。主配置文件application.properties只留一个spring.profiles.active=@env@的配置,此处evn这个变量取得上图profile中标签<evn>的值,他的值关系到你copy的三份配置文件xxx的命令,这个地方需要注意。其他的三份application-xxx.properties文件,我们为了测试就只改他们的tomcat的端口号不一样即可大功告成。附图:

主配置文件:

开发环境配置文件:

好了,其他的配置文件就不多加赘述,为了方便看效果只是简单的改了启动的tomcat的端口号。

3、看效果,我们选择开发环境的配置启动,注意看启动信息。附图:

免责声明
本站部分资源来源于互联网 如有侵权 请联系站长删除
龙哥网是优质的互联网科技创业资源_行业项目分享_网络知识引流变现方法的平台为广大网友提供学习互联网相关知识_内容变现的方法。