Spring Boot项目部署及mysql并允许前端本地访问

 更新时间:2026年05月27日 10:22:20   作者:wxr0616  
Spring Boot是一个用与开发和构建基于Spring的框架的Java应用于程序的开源框架,它简化Spring应用程序的初始配置和开发过程,这篇文章主要介绍了Spring Boot项目部署及mysql并允许前端本地访问的相关资料,需要的朋友可以参考下

1)修改后端配置

确保 <font style="color:rgb(64, 64, 64);">application.yml</font> 或 <font style="color:rgb(64, 64, 64);">application.properties</font> 中的数据库连接指向服务器MySQL

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/数据库名?useSSL=false
    username: your_user
    password: your_password

2)解决跨域问题

如果后端未配置 CORS,在 Spring Boot 中添加:

@Configuration
public class CorsConfig implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
        .allowedOrigins("*")  // 允许所有来源(或指定前端地址)
        .allowedMethods("GET", "POST", "PUT", "DELETE")
        .allowedHeaders("*");
    }
}

2)打包jar

进入文件根目录(有pom.xml的那一级)

运行

mvn clean package

3)上传到服务器

4)在服务器运行后端

java -jar C:\Users\Administrator\Desktop\ngpos-boot3-1.0.jar --server.port=8081

检查是否运行:

ps aux | grep java
netstat -tulnp | grep 8080

配置本地Vue前端访问服务器API

(1)修改Vue的API请求地址

在 <font style="color:rgb(64, 64, 64);">vue.config.js</font> 中配置代理:

module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: 'http://服务器IP:8080',  // 后端地址
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    }
  }
}

或者在 <font style="color:rgb(64, 64, 64);">.env.development</font> 中设置:

VUE_APP_API_BASE_URL=http://服务器IP:8080

然后在代码中使用:

axios.get(`${process.env.VUE_APP_API_BASE_URL}/api/data`);

(2)解决跨域问题

如果后端未配置 CORS,在 Spring Boot 中添加:

@Configuration
public class CorsConfig implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
        .allowedOrigins("*")  // 允许所有来源(或指定前端地址)
        .allowedMethods("GET", "POST", "PUT", "DELETE")
        .allowedHeaders("*");
    }
}

测试访问

(1)直接访问后端API

在浏览器或 Postman 访问:

http://服务器IP:8080/api/test

如果返回数据,说明后端正常运行。

(2)本地Vue访问

运行本地前端:

npm run dev

访问 <font style="color:rgb(64, 64, 64);">http://localhost:8080</font>,检查是否能获取服务器数据。

===============================================================

错误:

PS C:\Users\17035\Desktop\新建文件夹\back-end-of-western-restaurant - 副本\dish\target> java -jar ngpos-boot3-1.0.jar ngpos-boot3-1.0.jar中没有主清单属性

完整的解决方案:

根据你的 pom.xml 文件,我发现导致 JAR 文件无法运行的关键问题是 spring-boot-maven-plugin 配置中的 true。这个参数会跳过 Spring Boot 的可执行 JAR 打包过程,导致生成的 JAR 文件缺少必要的启动信息。以下是

  • 问题修复步骤
    (1) 修改 spring-boot-maven-plugin 配置
    将以下部分:
<configuration>
  <mainClass>com.example.dish.DishApplication</mainClass>
  <skip>true</skip>  <!-- 删除这一行 -->
</configuration>

改为

<configuration>
    <mainClass>com.example.dish.DishApplication</mainClass>
</configuration>

1. 正确的端口映射命令(管理员权限运行)

netsh interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=8081 connectaddress=127.0.0.1 protocol=tcp

2. 命令参数说明

参数说明
<font style="color:rgb(64, 64, 64);">listenport</font>80外部访问的端口
<font style="color:rgb(64, 64, 64);">listenaddress</font>0.0.0.0监听所有网络接口
<font style="color:rgb(64, 64, 64);">connectport</font>8081内部服务实际端口
<font style="color:rgb(64, 64, 64);">connectaddress</font>127.0.0.1转发到本机
<font style="color:rgb(64, 64, 64);">protocol</font>tcp使用TCP协议

3. 验证映射是否成功

netsh interface portproxy show all

预期输出:

侦听 ipv4:                 连接到 ipv4:
地址            端口        地址            端口
--------------- ----------  --------------- ----------
0.0.0.0         80          127.0.0.1       8081

4. 开放防火墙80端口(如果尚未开放)

netsh advfirewall firewall add rule name="HTTP_80" dir=in action=allow protocol=TCP localport=80

5. 测试访问

现在可以通过以下方式访问:

http://8.138.207.62:80/ticket/listAll

6. 注意事项

  • 需要以管理员身份运行CMD/PowerShell

如果80端口被系统服务占用,可改用其他端口(如8080):

netsh interface portproxy add v4tov4 listenport=8080 listenaddress=0.0.0.0 connectport=8081 connectaddress=127.0.0.1
  • 重启后映射会失效,如需持久化可以创建计划任务

7. 完整操作示例

:: 添加端口映射
netsh interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=8081 connectaddress=127.0.0.1

:: 查看所有映射规则
netsh interface portproxy show all

:: 开放防火墙
netsh advfirewall firewall add rule name="HTTP_80" dir=in action=allow protocol=TCP localport=80

:: 测试映射是否生效(在服务器本地执行)
curl http://localhost:80/kitchen/tasks

如果仍然遇到问题,可能是:

  • IIS或其他服务占用了80端口(使用<font style="color:rgb(64, 64, 64);">netstat -ano | findstr :80</font>检查)
  • 云服务商限制了80端口(需在控制台开放)
  • 本地网络屏蔽了80端口(尝试手机热点访问)

总结 

到此这篇关于Spring Boot项目部署及mysql并允许前端本地访问的文章就介绍到这了,更多相关Spring Boot部署mysql前端本地访问内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java中GC与四种引用的关系详解

    Java中GC与四种引用的关系详解

    这篇文章主要介绍了Java中GC与四种引用的关系详解,Java 中一共有 4 种类型的引用 : StrongReference、 SoftReference、 WeakReference 以及 PhantomReference这 4 种类型的引用与 GC 有着密切的关系, 让我们逐一来看它们的定义和使用场景,需要的朋友可以参考下
    2023-09-09
  • Java实现按照大小写字母顺序排序的方法

    Java实现按照大小写字母顺序排序的方法

    这篇文章主要介绍了Java实现按照大小写字母顺序排序的方法,涉及java数组遍历、编码转换、判断等相关操作技巧,需要的朋友可以参考下
    2017-12-12
  • Spring使用注解方式实现创建对象

    Spring使用注解方式实现创建对象

    这篇文章主要介绍了Spring使用注解方式实现创建对象,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2023-02-02
  • IDEA中将SpringBoot项目提交到git仓库的方法步骤

    IDEA中将SpringBoot项目提交到git仓库的方法步骤

    本文主要介绍了IDEA中将SpringBoot项目提交到git仓库的方法步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • 用Java连接sqlserver数据库时候几个jar包的区别分析

    用Java连接sqlserver数据库时候几个jar包的区别分析

    这篇文章主要介绍了用Java连接sqlserver数据库时候几个jar包的区别分析,需要的朋友可以参考下
    2014-10-10
  • Java C++题解leetcode769最多能完成排序的块

    Java C++题解leetcode769最多能完成排序的块

    这篇文章主要为大家介绍了Java C++题解leetcode769最多能完成排序的块示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Java实现局域网IP地址扫描

    Java实现局域网IP地址扫描

    这篇文章主要为大家详细介绍了Java实现局域网IP地址扫描,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • Java基于FFmpeg实现Mp4视频转GIF

    Java基于FFmpeg实现Mp4视频转GIF

    FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。本文主要介绍了在Java中如何基于FFmpeg进行Mp4视频到Gif动图的转换,感兴趣的小伙伴可以了解一下
    2022-11-11
  • Spring Cloud Config与Bus整合实现微服务配置自动刷新功能

    Spring Cloud Config与Bus整合实现微服务配置自动刷新功能

    通过整合SpringCloud Config与Spring Cloud Bus,实现了微服务配置的自动刷新功能,这个机制允许一个微服务实例在配置更新时通过消息总线通知其他所有实例同步更新,从而保持配置的一致性并提升系统的运维效率
    2024-10-10
  • JetBrains的IDEA编辑器自动配置的JDK版本下载目录过程

    JetBrains的IDEA编辑器自动配置的JDK版本下载目录过程

    文章说明Java安装路径为~/Library/Java/JavaVirtualMachines/ms-17.0.16,并分享配置经验,建议用户根据实际需求调整环境变量,以确保Java版本正确运行
    2025-08-08

最新评论