56、如何部署springboot+vue前后端分离项目

如何部署springboot+vue前后端分离项目

一. 部署后端(Spring Boot)

1 构建后端项目

1.1.设置跨域

前端项目后续会部署到nginx,设置的是http://localhost路径,所以后端项目在打包前,重新设置一下跨域访问路径(跨域访问的路径根据自己设置的前端路径来定)

在这里插入图片描述

也可以通过添加配置类,设置多个跨域路径

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOrigins("http://localhost:5173", "http://localhost")  // 允许的来源
                .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")  // 允许的方法
                .allowedHeaders("*");  // 允许的请求头
    }
}
1.2 打包Spring Boot应用

这里我们打包LoanSystem项目,idea中打开LoanSystem项目,打开底部的终端窗口,输入命令

mvn clean package

在这里插入图片描述

这会在target目录下生成一个.jar文件, loansystem-0.0.1-SNAPSHOT.jar。

在这里插入图片描述

2. 设置JVM参数和编写启动脚本

在Spring Boot项目中创建JVM参数文件(如jvm.options)的具体位置可以根据你的项目结构和部署方式来确定。以下是几种常见的创建和使用jvm.options文件的方法:

  • 在项目根目录下创建:适合开发和测试环境,方便版本控制。
  • 在服务器上创建:适合生产环境,便于不同服务器上的个性化配置。
  • 作为系统环境变量:适合统一管理多个Java应用的JVM参数。
2.1 方法1:在项目根目录下创建
1 在项目根目录创建jvm.options文件
  • 在你的Spring Boot项目根目录下创建一个名为jvm.options的文件。文件内容如下:
    -Xms512m
    -Xmx2g
    -XX:+UseG1GC
    -XX:+PrintGCDetails
    -Xlog:gc*:file=gc.log:time
    

在这里插入图片描述

解释:

  1. -Xms512m
    含义: 设置 JVM 的初始堆内存大小为 512MB。
    解释: -Xms 参数用于指定 JVM 启动时分配的初始堆内存大小。当你启动一个 Java 应用程序时,JVM 会预先分配指定的内存量,这样可以减少启动时的内存分配开销。

  2. -Xmx2g
    含义: 设置 JVM 的最大堆内存大小为 2GB。
    解释: -Xmx 参数用于指定 JVM 可以使用的最大堆内存大小。当应用程序运行时,如果需要更多的内存,JVM 会自动扩展堆内存,直到达到设定的最大值。这个参数可以帮助防止内存不足导致的 OutOfMemoryError。

  3. -XX:+UseG1GC
    含义: 启用 G1 垃圾收集器。
    解释: -XX:+UseG1GC 参数用于启用 G1 (Garbage First) 垃圾收集器。G1 是一种并行、并发、增量式的垃圾收集器,适用于多核处理器和大内存环境。它旨在提供较低的停顿时间,并且能够自动调整以适应不同应用的需求。

  4. -XX:+PrintGCDetails
    含义: 打印详细的垃圾回收日志。
    解释: -XX:+PrintGCDetails 参数用于在控制台输出详细的垃圾回收日志信息。这些信息包括每次垃圾回收的类型、耗时、回收的内存量等。通过这些日志,开发人员可以分析垃圾回收的性能,优化应用程序的内存使用。

  5. -Xlog:gc:file=gc.log:time
    含义: 将垃圾回收日志记录到文件 gc.log,并包含时间戳。
    解释:
    -Xlog:gc*:这个参数用于启用垃圾回收相关的日志记录。gc* 表示记录所有与垃圾回收相关的日志。
    file=gc.log: 指定日志文件的名称和路径。这里将日志输出到名为 gc.log 的文件中。
    time: 在日志中包含时间戳,用于标识每条日志记录的时间。

2.编写启动脚本

对于windows系统,在项目根目录下创建一个start.bash脚本,linux上则创建start.sh脚本

@echo 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

跟着汪老师学编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值