日常开发中,你是否常常陷入两难困境?要么使用功能齐全但臃肿复杂的“全家桶”框架,要么从零开始造轮子,灵活却耗时费力。有没有一种中间路线,既能让你快速启动项目,又保留足够的自由度来应对复杂业务?
答案是肯定的。本文将为你介绍一个基于 SpringBoot3 打造的轻量级、组件化 Web 开发框架。它秉承“按需组合”的理念,把权限、缓存、安全等通用能力封装成独立模块,让开发者能够像架构师一样思考,亲手搭建最适合自己业务的 Web 架构。
项目介绍
该项目是一套开源的 Web 应用开发基座,整体采用模块化设计。其结构清晰,包含后端核心框架 aizuda-panshi、配套前端 UI 框架 aizuda-panshi-ui,以及数据库脚本、文档等资源。
它的目标并非取代 Spring Boot,而是为其“减负增能”——剥离冗余部分,保留核心骨架,并将各种通用能力封装为即插即用的组件。这样一来,开发者可以更专注于业务逻辑的实现,而非重复搭建基础设施。

项目功能
- 单点登录(SSO):支持统一身份认证,有效简化多系统间的登录流程。
- 图片验证码:内置图形验证码的生成与校验功能,提升登录环节的安全性。
- 接口权限控制:提供基于角色或自定义注解的细粒度 API 权限管理方案。
- 本地与分布式缓存:同时支持 Caffeine 本地缓存和 Redis 分布式缓存,适配不同性能与一致性要求的场景。
- 分布式锁与限流:集成 Redis 实现高并发场景下的资源保护与流量控制。
- 系统监控:提供应用运行状态、接口调用统计等基础监控能力。
- 文件存储:抽象文件上传接口,支持本地存储、OSS 对象存储等多种方式。
- 消息机器人:集成企业微信、钉钉等机器人,支持系统异常告警与业务通知。
- 安全加密:提供 AES、RSA 等常用加解密工具类,保障敏感数据安全。
- 组件库:将上述所有功能封装为独立的 Spring Boot Starter,可单独引入,避免不必要的依赖污染。
项目特点
- 轻量精简:核心框架无冗余依赖,仅包含必要功能,启动速度快,内存占用低。
- 组件化设计:每个能力都是独立模块,真正做到“用多少,装多少”,保持项目简洁。
- 开箱即用:提供完整的使用示例和 SQL 初始化脚本,配合详细的 README 文档,可快速搭建并运行第一个应用。
- 面向开发友好:代码结构清晰,注释完整,既适合用于生产,也适合学习或二次开发。
- 强调自主性:不强制绑定特定技术栈,前端 UI 可替换,后端组件可裁剪,鼓励开发者根据实际场景定制专属架构。
项目技术栈
- 后端基座:基于 SpringBoot 3.x 与 Java 17,拥抱虚拟线程(Preview)、GraalVM 兼容等新特性。
- 权限模型:采用 Spring Security 结合自定义注解,实现灵活、声明式的接口级权限控制。
- 缓存方案:本地缓存使用 Caffeine,分布式缓存使用 Redis,并通过统一接口方便切换。
- 限流与锁:基于 Redis 的 Lua 脚本实现原子操作,保证高并发场景下的可靠性与性能。
- 前端 UI:配套提供简洁的 Vue3 基础模板(aizuda-panshi-ui),包含登录、布局、权限指令等常用功能。
- 安全机制:集成 BCrypt 密码加密、JWT Token 认证、敏感字段脱敏等安全最佳实践。
- 部署友好:支持传统 Jar 包直接运行,也完美适配 Docker 容器化部署。
项目在线体验地址: https://naiveui.aizuda.com/login
项目结构
|- aizuda-framework 核心框架
|- aizuda-panshi 后端 Web 开发框架
|- aizuda-panshi-ui 前端 UI 框架
|- sql 数据库文件存放目录
|- LICENSE 授权协议
|- README.md 说明文件
|- changelog.md 更新日志
项目效果
使用该框架,搭建一个具备登录、权限管理和缓存功能的后台系统变得异常简单。你只需引入 aizuda-panshi 核心模块,再加上 security-starter 和 redis-starter,配置好数据库连接,短短几分钟内就能跑起一个具备用户管理、接口鉴权、操作日志等基础功能的后台。
前端直接使用配套的 UI 模板,连样式都无需重写。更重要的是,如果你的项目不需要消息机器人或文件存储功能,完全不用引入相关依赖,项目结构依然能保持干净清爽。



项目源码
该项目已在 Gitee 平台开源,代码结构清晰,文档齐全,方便开发者学习和使用。
如果你对这类开源实战项目感兴趣,可以前往查阅。
Gitee 仓库地址:https://gitee.com/aizuda/aizuda-framework
总结
通过 SpringBoot3 的现代化底座与组件化的模块设计,该框架让普通开发者也能像架构师一样思考:我的项目究竟需要哪些能力?哪些可以舍弃?如何组合出最适合当前业务的技术方案?在这个“过度工程化”现象并不少见的时代,这种克制而实用的设计哲学,反而显得尤为珍贵。
如果你已经厌倦了被庞大框架的固定范式所束缚,不妨尝试一下这个轻量级的选择。它或许能帮助你跳出框架的局限,亲手搭建一套真正属于自己的、高效灵活的 Web 架构。技术社区的活力源于分享与实践,欢迎在 云栈社区 与更多开发者交流类似的心得与项目。
|