技术栈
本文档介绍 Vben Admin 项目使用的技术栈。
后端技术栈
核心框架
| 技术 | 版本 | 说明 |
|---|---|---|
| Spring Boot | 3.2.5 | 基础框架 |
| JDK | 17+ | Java 开发工具包 |
| Maven | 3.8+ | 项目管理工具 |
数据库
| 技术 | 版本 | 说明 |
|---|---|---|
| MySQL | 8.0+ | 关系型数据库 |
| Redis | 6.0+ | 缓存数据库 |
| MyBatis-Plus | 3.5.6 | ORM 框架 |
| Druid | 1.2.21 | 数据库连接池 |
权限认证
| 技术 | 版本 | 说明 |
|---|---|---|
| Sa-Token | 1.38.0 | 权限认证框架 |
工具库
| 技术 | 版本 | 说明 |
|---|---|---|
| Hutool | 5.8.26 | Java 工具类库 |
| Lombok | - | 简化 Java 代码 |
| MapStruct | 1.5.5 | 对象映射工具 |
| EasyExcel | 3.3.4 | Excel 处理 |
API 文档
| 技术 | 版本 | 说明 |
|---|---|---|
| Knife4j | 4.5.0 | API 文档工具 |
定时任务
| 技术 | 版本 | 说明 |
|---|---|---|
| Quartz | - | 定时任务框架 |
前端技术栈
核心框架
| 技术 | 版本 | 说明 |
|---|---|---|
| Vue | 3.4+ | 渐进式 JavaScript 框架 |
| TypeScript | 5.0+ | JavaScript 超集 |
| Vite | 5.0+ | 前端构建工具 |
| Node.js | 20.12+ | JavaScript 运行环境 |
| pnpm | 10.0+ | 包管理器 |
UI 框架
| 技术 | 版本 | 说明 |
|---|---|---|
| Ant Design Vue | 4.0+ | UI 组件库 |
| Element Plus | - | UI 组件库(可选) |
| Naive UI | - | UI 组件库(可选) |
状态管理
| 技术 | 版本 | 说明 |
|---|---|---|
| Pinia | 2.0+ | Vue 状态管理 |
路由
| 技术 | 版本 | 说明 |
|---|---|---|
| Vue Router | 4.0+ | Vue 路由管理 |
CSS 框架
| 技术 | 版本 | 说明 |
|---|---|---|
| Tailwind CSS | 3.0+ | 原子化 CSS 框架 |
| UnoCSS | - | 即时原子化 CSS 引擎 |
图表
| 技术 | 版本 | 说明 |
|---|---|---|
| ECharts | 5.0+ | 数据可视化库 |
编辑器
| 技术 | 版本 | 说明 |
|---|---|---|
| Quill | 2.0+ | 富文本编辑器 |
| Monaco Editor | 0.45+ | 代码编辑器 |
| marked | 11.0+ | Markdown 解析器 |
文件处理
| 技术 | 版本 | 说明 |
|---|---|---|
| xlsx | - | Excel 处理 |
| Viewer.js | 1.11+ | 图片预览 |
| PDF.js | 3.11+ | PDF 预览 |
工具库
| 技术 | 版本 | 说明 |
|---|---|---|
| axios | - | HTTP 客户端 |
| dayjs | - | 日期处理 |
| lodash-es | - | 工具函数库 |
| crypto-js | - | 加密库 |
| qrcode | - | 二维码生成 |
图标
| 技术 | 版本 | 说明 |
|---|---|---|
| Iconify | - | 图标库 |
代码规范
| 技术 | 版本 | 说明 |
|---|---|---|
| ESLint | - | JavaScript 代码检查 |
| Prettier | - | 代码格式化 |
| Stylelint | - | CSS 代码检查 |
| Commitlint | - | Git 提交规范 |
开发工具
推荐 IDE
- IntelliJ IDEA:Java 开发
- VS Code:前端开发
VS Code 插件
- Vue - Official
- TypeScript Vue Plugin (Volar)
- ESLint
- Prettier
- Tailwind CSS IntelliSense
- GitLens
IDEA 插件
- Lombok
- MyBatis X
- Alibaba Java Coding Guidelines
浏览器支持
| 浏览器 | 版本 |
|---|---|
| Chrome | 最新 2 个版本 |
| Firefox | 最新 2 个版本 |
| Safari | 最新 2 个版本 |
| Edge | 最新 2 个版本 |
不支持 IE 浏览器。
环境要求
开发环境
- 操作系统:Windows / macOS / Linux
- JDK:17+
- Node.js:20.12+
- MySQL:8.0+
- Redis:6.0+
- Maven:3.8+
- pnpm:10.0+
生产环境
- 服务器:Linux(推荐 CentOS 7+ / Ubuntu 20.04+)
- JDK:17+
- MySQL:8.0+
- Redis:6.0+
- Nginx:1.20+
技术选型原因
为什么选择 Spring Boot 3?
- 基于 Java 17,性能更好
- 原生支持 GraalVM
- 更好的可观测性
- 活跃的社区支持
为什么选择 Vue 3?
- Composition API 更灵活
- 性能更好
- TypeScript 支持更完善
- 生态系统成熟
为什么选择 Vite?
- 开发服务器启动快
- 热更新速度快
- 构建速度快
- 插件生态丰富
为什么选择 Pinia?
- 更简洁的 API
- 完整的 TypeScript 支持
- 模块化设计
- Vue 3 官方推荐
为什么选择 Tailwind CSS?
- 原子化 CSS,灵活性高
- 减少 CSS 文件大小
- 开发效率高
- 易于维护
学习资源
后端
前端
版本更新
项目会定期更新依赖版本,保持技术栈的先进性和安全性。
查看最新版本信息:
- 后端:
pom.xml - 前端:
package.json