# 予书管理系统 - 后端
基于 Spring Boot 的企业级管理系统后端
予书管理系统后端是一个基于 Spring Boot 3.x 的企业级应用系统,提供完整的用户权限管理、系统监控等功能。
| 技术 | 说明 | 版本 |
|---|---|---|
| Spring Boot | 基础框架 | 3.5.4 |
| Spring Security | 安全框架 | - |
| MyBatis | ORM框架 | - |
| Druid | 数据库连接池 | - |
| 技术 | 说明 | 版本 |
|---|---|---|
| MySQL | 主数据库 | 5.7+ |
| Redis | 缓存数据库 | 3.0+ |
| 技术 | 说明 |
|---|---|
| JWT | Token生成与验证 |
| FastJson | JSON处理 |
| POI | Excel导入导出 |
| Velocity | 代码生成模板引擎 |
| Quartz | 定时任务调度 |
yushu-backend/
├── sql/ # 数据库脚本
│ ├── ys_20250522.sql # 系统核心数据库(必须)
│ ├── quartz.sql # 定时任务模块(必须)
│ ├── ai.sql # AI模块(可选)
│ ├── mail.sql # 邮箱模块(可选)
│ ├── file.sql # 文件模块(可选)
│ ├── message.sql # 消息模块(可选)
│ └── error-log.sql # 错误日志模块(可选)
├── yushu-admin/ # 主应用模块
│ └── src/main/java/com/yushu/
│ ├── YuShuApplication.java # 启动类
│ └── web/controller/ # 控制器层
├── yushu-common/ # 通用模块
│ └── src/main/java/com/yushu/common/
│ ├── annotation/ # 自定义注解
│ ├── constant/ # 常量定义
│ ├── core/ # 核心组件
│ ├── enums/ # 枚举类
│ ├── exception/ # 异常处理
│ └── utils/ # 工具类
├── yushu-framework/ # 框架核心
│ └── src/main/java/com/yushu/framework/
│ ├── aspectj/ # AOP切面
│ ├── config/ # 配置类
│ ├── datasource/ # 数据源配置
│ ├── interceptor/ # 拦截器
│ ├── security/ # 安全配置
│ └── web/ # Web配置
├── yushu-generator/ # 代码生成器
├── yushu-quartz/ # 定时任务模块
└── yushu-system/ # 系统模块
└── src/main/java/com/yushu/system/
├── domain/ # 实体类
├── mapper/ # Mapper接口
├── service/ # 服务层
└── controller/ # 控制器(由admin模块调用)
git clone https://github.com/your-username/yushu-backend.git
cd yushu-backend
CREATE DATABASE yushu DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
必须导入:
# 系统核心数据库
mysql -u root -p yushu < sql/ys_20250522.sql
# 定时任务模块
mysql -u root -p yushu < sql/quartz.sql
可选模块:
# AI模块 - 集成AI聊天功能
mysql -u root -p yushu < sql/ai.sql
# 邮箱模块 - 系统邮件发送
mysql -u root -p yushu < sql/mail.sql
# 文件模块 - 文件管理功能
mysql -u root -p yushu < sql/file.sql
# 消息模块 - 站内消息功能
mysql -u root -p yushu < sql/message.sql
# 错误日志模块 - 前端错误日志收集
mysql -u root -p yushu < sql/error-log.sql
编辑 yushu-admin/src/main/resources/application-druid.yml:
spring:
datasource:
druid:
master:
url: jdbc:mysql://localhost:3306/yushu?useUnicode=true&characterEncoding=utf8&...
username: root
password: your_password
编辑 yushu-admin/src/main/resources/application.yml 配置Redis:
redis:
host: localhost
port: 6379
password:
mvn clean package
cd yushu-admin/target
java -jar yushu-admin.jar
或者在IDE中直接运行 YuShuApplication.java
adminadmin123访问 http://localhost:8080/swagger-ui.html 查看完整的API文档。
/system/user - 用户管理/system/role - 角色管理/system/menu - 菜单管理/system/dept - 部门管理/system/ai/** - AI聊天相关/monitor/** - 系统监控相关application.yml - 主配置文件application-druid.yml - 数据源配置logback.xml - 日志配置token:
header: Authorization
secret: your-secret-key
expireTime: 30 # 分钟
yushu:
profile: D:/yushu/uploadPath # 上传路径
upload:
maxSize: 50 # MB
在数据库 ai_model_config 表中配置各AI厂商的API密钥。
# 打包
mvn clean package -Dmaven.test.skip=true
# 运行
nohup java -jar yushu-admin.jar > yushu.log 2>&1 &
FROM openjdk:8-jdk-alpine
VOLUME /tmp
COPY yushu-admin.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
docker build -t yushu-backend .
docker run -d -p 8080:8080 --name yushu yushu-backend
欢迎提交Issue和Pull Request!
[模块] 功能描述本项目采用 MIT 许可证。
感谢以下开源项目: