Lihua Service
狸花猫后台管理系统(单体版),基于 Java 25 + Spring Boot 4.x 开发
🛠️ 技术特性
- 🆕 持续更新:持续监控依赖漏洞并及时更新修复
- 🗄️ 数据持久化:采用MyBatisPlus框架,SQL语句通用化设计,支持多类型数据库快速切换
- 📢 实时通信:内置WebSocket消息推送工具,支持服务端向客户端实时推送消息,支持事务提交后再推送
- 🧰 工具集合:提供树形结构处理、数据字典翻译、Excel导入导出等常用工具类
- 🧵 并发处理:支持JDK虚拟线程技术,配置文件默认开启,提升系统并发能力
- 🏷️ 注解集成:内置日志记录、接口限流、防重复提交等注解,开箱即用无需配置
- 🔐 权限管理:完善的RBAC权限体系,支持角色关联菜单、页面、链接等多层级权限配置
- 📎 文件管理:支持上传、分片上传、断点续传、文件秒传、Range协商下载(视频拖动/断点续传),兼容本地存储和阿里OSS
✨ 3.0 更新内容
提示
3.0 版本对仓库结构、模块命名、基础依赖进行了全面升级,并补齐了一批安全与性能能力。
🧱 仓库拆分
3.0 版本起,项目按端拆分仓库,后端单体服务独立为本仓库维护
本仓库(Lihua Service) 纯后端单体服务,只包含 Spring Boot 后端工程。
lihua-web(Web 管理端) 前端 Vue 3 管理端拆分至独立仓库。lihua-app(移动端) UniApp 移动端拆分至独立仓库。
🏷️ 模块命名升级
基础能力模块统一升级为 lihua-base-xxx 命名(如 lihua-excel → lihua-base-excel),模块职责一目了然。同时 3.0 中不再单独维护 lihua-ip 模块,IP 相关能力(真实IP解析、ip2region归属地、IP黑名单拦截)全部并入 lihua-base-web。
🚀 核心依赖升级
- Spring Boot 升级至 4.1.1,Java 升级至 25
- 虚拟线程默认开启(
spring.threads.virtual.enabled: true) - JSON 处理库升级至 Jackson 3,完成相关适配
- 虚拟线程默认开启(
- MyBatis-Plus 升级至 3.5.17(boot4 starter)
- Redisson 升级至 4.7.0,并新增基于 Caffeine 的本地二级缓存
- JWT 升级至 java-jwt 4.6.0、Excel 处理升级至 Apache Fesod 2.0.2
- 定时任务框架 Snail Job 升级至 2.0.2、ip2region 升级至 3.3.7
- 对象存储继续使用阿里云 OSS(3.18.5),无 hutool 依赖,工具类全部自研于
lihua-base-common
🎁 新增能力
- 接口限流:
@RateLimit注解,按「客户端 ip + 接口」维度滑动窗口限流,超出即 429 - 登录失败锁定:账号 + IP 双维度计数,窗口内失败达阈值即锁定对应主体
- 权限变更红点:权限数据变更后推送红点提示,用户点击「数据更新」重载会话,替代旧版"权限变更踢下线"
- 附件能力增强:HTTP Range 协商下载(206 Partial Content)、HMAC-SHA256 签名下载链、分片上传/秒传模式化
- 本地缓存:Caffeine 一级缓存 + Redis 二级缓存,多实例部署下经发布订阅广播本地失效
- 通知公告 REST API:管理端发布/撤销/预览、用户侧列表/标星/已读/未读计数完整接口,公告发布事务提交后 WebSocket 推送
🔐 安全加固
- 统一返回码重构:
ResultCodeEnum对齐 HTTP 语义(400/401/403/404/405/422/429/451),业务异常 5xx - 全局异常加固:认证失败、权限不足、限流等异常固定文案返回,兜底异常不透传内部细节,防止接口枚举与信息泄露
- 下载链防伪:附件下载链接经 HMAC-SHA256 签名,密钥未配置直接拒绝启动
- 防重复提交:新增
excludeParams属性,敏感字段(如密码)不进入 Redis 幂等键 - IP 黑名单:请求进入业务前经黑名单拦截器校验,规则经本地缓存加速
📁 项目目录结构
lihua/
├── pom.xml # 项目依赖管理
├── lihua-admin/ # 应用启动
│ └── pom.xml
├── lihua-base/ # 基础能力模块
│ ├── pom.xml
│ ├── lihua-base-attachment/ # 附件模块
│ ├── lihua-base-cache/ # 系统缓存模块
│ ├── lihua-base-captcha/ # 验证码模块
│ ├── lihua-base-common/ # 公共模块
│ ├── lihua-base-dict/ # 字典模块
│ ├── lihua-base-doc/ # 接口文档模块
│ ├── lihua-base-excel/ # excel倒入导出模块
│ ├── lihua-base-job/ # 定时任务模块
│ ├── lihua-base-log/ # 日志模块
│ ├── lihua-base-mybatis/ # mybatis持久层框架模块
│ ├── lihua-base-security/ # 安全模块
│ ├── lihua-base-sensitive/ # 脱敏模块
│ ├── lihua-base-web/ # web模块(含IP解析、归属地、黑名单能力)
│ └── lihua-base-ws/ # WS 消息边界模块(推送投递入口 + 上行处理器 SPI)
├── lihua-websocket/ # WebSocket 连接层(受控基建库,随 lihua-admin 装配持有连接)
└── lihua-biz/ # 业务模块
├── pom.xml
├── lihua-monitor/ # 系统监控
└── lihua-system/ # 系统业务📄 许可证
本项目采用 MIT License 开源协议,详情请查看 LICENSE 文件。

