大家好,我是仁杰,今天给大家分享一款快速开发脚手架,可以快速搭建企业级后台管理系统,同时还提供了多种便捷starter进行功能扩展。
介绍
快速搭建企业级后台管理系统,主要功能包括前后台用户分离、菜单权限、数据权限、定时任务、访问日志、异常日志、统一异常处理、XSS过滤、SQL注入,国际化等多种功能。
预览
登录页面
代码生成
模版管理
系统用户
字典管理
公告管理
国际化信息
模版组件
项目源码
模块
主要功能有:数据权限控制、国际化功能、注解使用、支付功能、对象存储封装等。目前提供的功能模块列表。
|-- ballcat-common -- 基础公用组件
| |-- ballcat-common-core -- 核心组件
| |-- ballcat-common-desensitize -- 脱敏基础组件
| |-- ballcat-common-i18n -- 国际化基础组件
| |-- ballcat-common-idempoten -- 幂等基础组件
| |-- ballcat-common-log -- 日志基础组件
| |-- ballcat-common-model -- 公用的一些模型
| |-- ballcat-common-redis -- redis基础组件
| |-- ballcat-common-security -- 安全相关,以及资源服务器配置
| |-- ballcat-common-util -- 公用的工具
| `-- ballcat-common-websocket -- 对于 spring websocket 的一些抽象封装
|-- ballcat-dependencies -- ballcat项目本身各子模块的依赖管理,以及第三方模块的依赖管理
|-- ballcat-extends -- 扩展模块,大多是对于一些第三方组件的扩展处理
| |-- ballcat-extend-dingtalk -- 钉钉的一些操作封装
| |-- ballcat-extend-kafka -- kafka 的一些操作扩展
| |-- ballcat-extend-kafka-stream -- kafka 流处理的一些操作扩展
| |-- ballcat-extend-mybatis-plus -- 基于 mybatis-plus 相关的一些扩展
| |-- ballcat-extend-openapi -- 对 springdoc-openapi 的一点封装扩展
| |-- ballcat-extend-pay-ali -- 针对支付宝支付的一些操作封装
| |-- ballcat-extend-pay-virtual -- 针对虚拟货币支付的一些操作封装
| |-- ballcat-extend-pay-wx -- 针对微信支付的一些操作封装
| |-- ballcat-extend-redis-module -- redis module 的扩展功能(暂时只有布隆过滤器)
| `-- ballcat-extend-tesseract -- 对 OCR 文字识别工具的一个操作封装
|-- ballcat-starters -- Spring Boot快速启动器
| |-- ballcat-spring-boot-starter-datascope -- 数据权限控制
| |-- ballcat-spring-boot-starter-dingtalk -- 钉钉集成工具
| |-- ballcat-spring-boot-starter-easyexcel -- 通过注解快速导入导出excle(easyexcel)
| |-- ballcat-spring-boot-starter-file -- 文件上传 FTP or Local
| |-- ballcat-spring-boot-starter-i18n -- 国际化方案
| |-- ballcat-spring-boot-starter-idempotent -- 幂等处理方案
| |-- ballcat-spring-boot-starter-ip2region -- 离线IP查询方案
| |-- ballcat-spring-boot-starter-job -- 定时任务集成(目前仅xxl-job)
| |-- ballcat-spring-boot-starter-kafka -- 消息队列 kafka 集成
| |-- ballcat-spring-boot-starter-log -- 访问日志,操作日志,TraceId注入
| |-- ballcat-spring-boot-starter-mail -- 邮件发送
| |-- ballcat-spring-boot-starter-oss -- 对象存储(所有支持 AWS S3 协议的云存储,如阿里云,七牛云,腾讯云)
| |-- ballcat-spring-boot-starter-pay -- 支付相关
| |-- ballcat-spring-boot-starter-redis -- 提供注解使用 redis, 分布式锁,防击穿,全局key前缀等功能
| |-- ballcat-spring-boot-starter-sms -- 短信接入 starter
| |-- ballcat-spring-boot-starter-swagger -- swagger文档配置(提供无注册中心的文档聚合方案)
| |-- ballcat-spring-boot-starter-web -- Web工程封装
| |-- ballcat-spring-boot-starter-websocket -- 基于 common-websocket 的自动配置
| `-- ballcat-spring-boot-starter-xss -- xss 防注入相关
部署
数据库配置
# 数据库建库语句
scheme.sql
# 数据库核心语句
ballcat.sql
# 国际化相关sql,无需国际化则不需要执行
ballcat-i18n.sql
后台编译
# 下载模版仓库项目代码
git clone https://github.com/ballcat-projects/ballcat-boot.git
或
git clone https://github.com/ballcat-projects/ballcat-samples.git
# 本地启动
直接在开发工具中启动 SpringBoot 的启动类 AdminApplication 即可
前端编译
# 下载代码
git clone https://github.com/ballcat-projects/ballcat-ui-vue.git
# 安装依赖
yarn install 或 npm install
# 启动项目
yarn serve 或 npm run serve
访问地址
默认前端项目路径:http://localhost:8000/
默认用户名密码:admin / a123456
注意检查前端的 vue.config.js 中的 serverAddress 属性,需要改为对应的服务端地址,如 http://ballcat-admin:8080
总结
项目提供了一系列的基础能力,方便使用者根据项目需求快速进行功能拓展。将自身所有的业务和功能都设计为可插拔的依赖,方便用户自由组装和卸载。