后端说明
作者: luote (luote) · 个人主页 luote996.cn
技术栈
- Spring Boot 3.4 + JDK 17
- MyBatis-Plus
- Spring Security + JWT + Redis
- SpringDoc OpenAPI (Swagger)
- Spring AI Alibaba (DashScope 通义千问)
- Hutool
- MinIO + 阿里云 OSS
- JetCache(穿透/击穿/雪崩/热点/预热/大 key 防护)
核心能力
认证与授权
- 登录 / 注册 / 登出 / 图形验证码
- JWT 签发与续期(有互动自动续期)
- ThreadLocal 用户上下文,便于业务层获取当前用户
- RBAC 角色控制(ADMIN 等)
用户管理
- 用户 CRUD(分页、关键词搜索)
- 软删除
- 敏感字段脱敏
- JetCache 二级缓存(详见 缓存方案)
文件存储
- MinIO 作为主存储
- 阿里云 OSS 作为保底存储
- 统一
StorageService封装
AI 验证
@AiValidate注解 + AOP 拦截- 可用于注册、评论等场景的 AI 内容校验
配置说明
| 文件 | 用途 |
|---|---|
| application.yml | 公共配置 |
| application-dev.yml | 开发环境 |
| application-prod.yml | 生产环境 |
| .env.example | 环境变量模板 |
开发环境敏感配置通过环境变量注入,复制 .env.example 为 .env 后修改。
数据库
data.sql 会创建 luote 库和 users 表,字段涵盖常见业务场景并支持软删除。
启动命令
bash
mvn spring-boot:run生产环境建议:
bash
mvn -DskipTests package
java -jar target/luote-backend-1.0.0.jar