前言
- 在目前测试工作中遇到了springboot开发的上位机,对相关开发流程和部署流程进行总结。
基础知识
- SpringBoot 和若依框架的关系: 若依框架(RuoYi)是基于 SpringBoot 深度封装、开箱即用的企业级后台管理系统快速开发平台;SpringBoot 是若依的核心底层基石与运行依赖,二者是「底层通用开发框架」与「上层业务化快速开发平台」的关系,若依无法脱离 SpringBoot 独立运行。
用若依框架开发的流程
环境准备
- JDK:Java 核心开发环境(若依 SpringBoot 2.x 用 JDK 8,3.x/4.x 用 JDK 17+)
- Maven:项目构建与依赖管理工具(需配置阿里云镜像加速依赖下载)
- 数据库:MySQL 5.7 或 8.0
- 缓存:Redis 3.0+,用于权限、会话等缓存,Redis 全称 Remote Dictionary Server,是一款基于内存的高性能键值型 NoSQL 数据库,核心优势是内存级读写速度(是磁盘数据库的数百倍)、支持丰富的数据结构、高可用易扩展,核心作用是解决传统关系型数据库(MySQL)在高并发、高频读、分布式场景下的性能瓶颈与功能短板,也是若依框架绝大多数开箱即用能力的底层支撑。
- 前端环境:Node.js 14/16/18(对应 Vue2/Vue3 版本),安装好 npm 或 yarn
- IDE:后端用 IntelliJ IDEA,前端用 VS Code
代码获取与导入
- 从 Gitee 克隆若依官方代码(推荐国内源)
- 后端:用 IDEA 打开项目,等待 Maven 自动下载依赖
- 前端:用 VS Code 打开
ruoyi-ui目录
数据库与配置修改
- 创建数据库,导入项目
sql目录下的初始化脚本 - 修改后端配置:数据库连接、Redis 连接、端口号等
- 修改前端配置:代理目标地址(指向后端地址)
依赖安装与功能开发
- 后端:Maven 自动完成依赖安装,功能开发遵循 MVC 分层(Controller → Service → Mapper → Entity)
- 前端:执行
npm install安装依赖,推荐优先用若依自带的「代码生成器」一键生成 CRUD 代码,再基于此进行手动业务开发
启动测试
- 启动后端:在 IDEA 中找到
RuoYiApplication.java启动类,右键运行 - 启动前端:在
ruoyi-ui目录执行npm run dev,启动成功后浏览器自动打开系统页面
部署流程
开发侧打包流程(生成交付给甲方的文件)
- 前后端整合
- 前端打包:在
ruoyi-ui目录执行npm run build:prod,生成dist目录 - 整合静态资源:将
dist目录下的所有文件复制到后端ruoyi-admin/src/main/resources/static目录
- 后端打 jar 包
- 修改后端生产配置:将
spring.profiles.active改为prod,确认生产环境的数据库、Redis 配置(可预留为甲方可修改格式) - 执行 Maven 打包:在 IDEA 中点击
clean→package,生成ruoyi-admin.jar
- 打包成绿色 exe(可选,针对无 Java 环境的甲方)
- 准备 JRE 文件夹(与 SpringBoot 版本匹配)
- 使用 Launch4j 工具,将 jar + JRE 打包成 exe,同时将
application-prod.yml放在 exe 同级目录(方便甲方修改配置)
甲方侧部署流程(基于 exe 交付场景)
- 本地环境确认
- 确保本地安装了 MySQL 5.7/8.0 和 Navicat
- 确保解压后的所有文件(exe、jre 文件夹、
application-prod.yml、SQL 脚本)在同一目录
- 数据库配置(Navicat 可视化操作)
- 打开 Navicat,连接本地 MySQL 数据库
- 新建数据库:数据库名
ry-vue,字符集utf8mb4,排序规则utf8mb4_general_ci - 导入 SQL 脚本:右键
ry-vue数据库,选择「运行 SQL 文件」,导入交付的 SQL 脚本 - 修改配置文件:打开
application-prod.yml,修改数据库连接地址、用户名、密码为本地 MySQL 信息
- 启动系统
- 双击
若依管理系统.exe启动程序(首次启动需等待 10-30 秒) - 打开浏览器,输入访问地址:
http://localhost:8080,回车即可打开系统登录页 - 默认账号:
admin,默认密码:admin123(请登录后立即修改)
- 报错排查技巧
- 如果 exe 文件运行报错闪退,可在 exe 文件所在位置打开 cmd 终端窗口,输入 exe 文件名并回车,查看具体报错日志