首页 - 神途礼包 > SpringBoot 实现动态配置及项目打包部署上线!

SpringBoot 实现动态配置及项目打包部署上线!

发布于:2024-05-13 作者:admin 阅读:137

大家好,我是顶级架构师。

一、动态配置文件

我们需要了解动态指定配置文件的方式,来提高我们的部署效率。

1.1、概述

在实际企业开发中,开发环境、测试环境、生产环境通常采用不同的数据库等中间件的连接方式。如果此时我们按照目前的方式,只有一个.yml配置文件,那么我们在不同环境下启动项目,都需要更改配置文件中的各种连接信息,虽然目前我们需要更改的连接地址少,但是每次去手动的更改这些信息,人工改的话是非常容易改错的。

提供了可以指定配置文件启动的方式,这样使得我们可以灵活的切换配置文件。

目前项目中也使用了这个指定配置文件的方式,只不过是在配置文件中指定的。代码如下图:

我们要做的是,在启动的时候指定。我们需要复制配置文件.yml和-druid.yml,命名为-prod.yml和-druid-prod.yml,用来区分开发环境和生产环境,多个环境同理。

不指定配置文件,默认读取.yml,我们开发的时候,可以直接启动项目。我们也可以分出一个dev的配置,这个看个人开发习惯。

1.2、启动方式1.2.1、jar包启动

在区分出了生产环境的配置后,我们通过jar包方式启动项目的时候,增加参数指定,可以在启动项目的时候,指定配置文件。代码如下:

java -jar xxx.jar --spring.profiles.active=prod,druid-prod

注意:

指定多个配置文件,使用,号分割。

启动项目的时候指定了配置文件,在yml中配置的..会失效

1.2.2、IDEA启动配置

如下图:

配置好后,使用IDEA启动项目,就会自动指定配置文件了。不需要的时候,直接删掉保存就可以了。另外,搜索公众号猿后台回复“赚钱”,获取一份惊喜礼包。

二、项目打包

我们在生产环境运行的时候,是使用jar的方式启动的。这里就需要我们将我们的项目打成jar,然后把项目运行起来。

项目结构如下:

本次构建的项目服务模块my--依赖my--和my--。所以需要先把这两个模块安装到本地,以便my--打包的时候,可以依赖到这两个模块。

项目打包的方式有多种,这里就简单介绍常用的两种方式。

2.1、IDEA打包

IDEA 打包方法:

如下图:

步骤:

2.2、Maven命令打包

步骤还是跟上个方式的步骤一致,不一样的是使用Maven命令,这里借助bat的方式,一次完成。

在模块同济目录下创建一个bin目录后,创建批处理文件.bat。代码如下:

cd ..cd my-project-dependenciescall mvn installcd ..cd my-project-commoncall mvn clean install -Dmaven.test.skip=truecd ..cd my-project-servercall mvn clean package -Dmaven.test.skip=truecd ..

打包时,只需要执行bin目录下的.bat文件即可完成打包。

-.test.skip=true意思为跳过测试。项目打包过程中,会执行我们编写的测试类。我们在日常项目开发过程中,或多或少会写测试类,这个参数就可以在打包的时候,跳过测试类的执行。

三、项目部署

打包完成后,会在项目的目录下生成一个项目的jar包,这个就是我们最终运行的程序了。如图所示:

3.1、安装环境

打包完成后,我们会将程序上传至服务器进行运行,服务器需要安装Java运行环境。

牛逼啊!接私活必备的 N 个开源项目!赶快收藏

1)、下载

下载地址:

找到Linux版本进行下载,可能需要登录,登录下载即可。

2)、创建目录

mkdir -p /usr/local/java

3)、上传文件至该目录

$ ls -altotal 144704drwxr-xr-x  2 root root      4096 Oct  5 15:19 ./drwxr-xr-x 14 root root      4096 Oct  5 15:18 ../-rw-r--r--  1 root root 148162542 Oct  5 15:19 jdk-8u341-linux-x64.tar.gz

4)、解压缩

tar -zxvf jdk-8u341-linux-x64.tar.gz

5)、配置系统变量

vim /etc/environment

添加如下语句

export JAVA_HOME=/usr/local/java/jdk1.8.0_341export JRE_HOME=/usr/local/java/jdk1.8.0_341/jreexport CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

6)、配置用户环境变量

vim /etc/profile

添加如下语句

export JAVA_HOME=/usr/local/java/jdk1.8.0_341export JRE_HOME=/usr/local/java/jdk1.8.0_341/jreexport CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

环境变量生效

source /etc/profile

7)、测试

$ java -versionjava version "1.8.0_341"Java(TM) SE Runtime Environment (build 1.8.0_341-b10)Java HotSpot(TM) 64-Bit Server VM (build 25.341-b10, mixed mode)

出现正常的版本号,说明安装成功啦~

3.2、项目启动

创建目录

mkdir -p /usr/local/apps/my-project

将之前项目打包的jar包上传至该目录

启动项目有多种方式

前台启动一,这种方式启动,会在窗口上输出启动日志,如果关闭窗口或者Ctrl+C,会终止程序。

java -jar my-project-server-1.0.0-SNAPSHOT.jar

前台启动二,这种方式启动,也会在窗口上输出启动日志,如果Ctrl+C,程序依然正常运行。

java -jar my-project-server-1.0.0-SNAPSHOT.jar &

后台启动,这种方式,不会再窗口上输出启动日志,如果关闭窗口程序依然正常运行。推荐

nohup java -jar my-project-server-1.0.0-SNAPSHOT.jar &

3.3、最终效果

启动后,访问:8899/sys-user/get/all,即可访问查询所有用户接口

欢迎大家进行观点的探讨和碰撞,各抒己见。如果你有疑问,也可以找我沟通和交流。扩展:

最后给读者整理了一份BAT大厂面试真题,需要的可扫码回复“面试题”即可获取。

公众号后台回复架构或者架构整洁有惊喜礼包!

顶级架构师交流群

「顶级架构师」建立了读者架构师交流群,大家可以添加小编微信进行加群。欢迎有想法、乐于分享的朋友们一起交流学习。

扫描添加好友邀你进架构师群,加我时注明【姓名+公司+职位】

二维码

扫一扫关注我们

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,请告知我们,本站将立刻删除涉嫌侵权内容。

相关文章