如果您对源码&技术感兴趣,请点赞+收藏+转发+关注,大家的支持是我分享最大的动力!!!
项目介绍
AgileBoot 是一套开源的全栈精简快速开发平台,基于 Spring Boot 和 Vue3 构建,旨在为个人开发者及企业提供一套精简可靠、代码风格优良、项目规范的小型开发脚手架。该平台适合用于个人开发者的小型项目、公司内部项目,也可作为初学者学习使用的案例。
基于 MIT license 协议开源!
应用场景
- 个人项目:为个人开发者提供快速构建项目的基础框架,减少初始搭建时间。
- 企业内部项目:作为企业内部项目的开发脚手架,提高开发效率和代码质量。
- 学习案例:作为初学者学习 Spring Boot 和 Vue3 的实践案例,帮助理解前后端分离的开发模式。
功能模块
- 用户管理:包括用户注册、登录、权限管理等功能。
- 系统管理:提供系统配置、日志管理、数据字典等管理功能。
- 业务模块:支持根据业务需求快速扩展新的业务模块,如会员管理、订单管理等。
- 权限控制:基于 Jwt 的权限认证,支持多终端认证系统,注解式菜单权限拦截和数据权限拦截。
- 缓存管理:提供多级缓存实现(Redis+Guava),优化系统性能。
功能特点
- 前后端分离:前端采用 Vue3、Element Plus、TypeScript、Pinia,后端采用 Spring Boot、Spring Security & Jwt、Redis & MySql、Mybatis Plus,实现前后端完全分离,提高开发效率。
- 权限认证:使用 Jwt 进行权限认证,支持多终端认证系统,确保系统安全。
- 注解式开发:支持注解式主从数据库切换、请求限流、重复请求拦截、菜单权限拦截、数据权限拦截等,提高开发效率。
- 动态权限菜单:支持加载动态权限菜单,实现实时权限控制。
- 单元测试与集成测试:大量的单元测试与集成测试覆盖,确保业务逻辑正确。
- 多缓存策略:提供三个层级的缓存供使用者调用(Map, Guava, Redis),可根据情况选择使用哪个缓存类。
- i18n 支持:支持国际化,方便不同语言环境的用户使用。
项目技术栈
后端技术栈
- Spring Boot:快速构建 Spring 应用的框架,提供丰富的组件和配置选项。
- Spring Security & Jwt:实现安全认证和授权,使用 Jwt 进行令牌管理。
- Redis & MySql:使用 Redis 作为缓存数据库,MySql 作为持久化数据库。
- Mybatis Plus:增强 Mybatis 的 ORM 框架,简化数据库操作。
- Hutool:工具包,提供丰富的实用工具类。
- Lombok:简化 Java 代码的编写,去除大量 getter/setter 代码。
- Jackson:用于 JSON 序列化和反序列化。
前端技术栈
- Vue3:构建用户界面的渐进式 JavaScript 框架。
- Element Plus:基于 Vue3 的 UI 组件库,提供丰富的 UI 组件。
- TypeScript:JavaScript 的超集,提供类型系统和编译时类型检查。
- Pinia:Vuex 的下一代状态管理库,提供更高效的状态管理。
功能演示
开源地址
- 后端源码:https://github.com/valarchie/AgileBoot-Back-End
- 前端源码:https://github.com/valarchie/AgileBoot-Front-End-Basic
如果您对源码&技术感兴趣,请点赞+收藏+转发+关注,大家的支持是我分享最大的动力!!!