5 Star 31 Fork 9

Tellsea / QBoot

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

QBoot 企业级低代码平台

一款基于 SpringBoot 开源的权限管理框架,非常适合个人独立完成全栈项目

相关链接

项目介绍

本项目采用最简单的方式来实现一套项目脚手架!系统功能,或者相关依赖,都是尽量写的最简化,并不会过多的定制功能,导致实际开发中不灵活等问题,又或者不敢随意增加、删除某个模块或功能,从我编写或设计这个框架的角度来分析,尽量避免的这种问题的发生,让使用者能够随意修改或者替换项目中使用的框架或者组件等

很多开发几年的小伙伴从事工作之后,都是不断的写业务 CURD,公司都是有自己的一套开发模板或框架,又或者说使用的是一套低代码平台,比如说若依、jeecg、人人开源等,咸鱼都不怎么关心它里面的基础模块、认证授权、代码生成等模块的实现方法,充当一个无情的 CRUD 工具人,所以这里以文章 + 技术实现的方式,给各位小伙伴做一套基于 SpringBoot 的权限管理系统,然后基于实战业务,针对不同的业务模块,直接构建相关的基础功能,让集成其他业务更加的简单,正所谓万事开头难。

例如:微信公众号授权登录,像这种常用业务,每个项目都要去复制粘贴一遍,虽然代码改动比较小了,但是终归还是要去梳理一遍逻辑,我们可以直接搭建一套模板,把需要的代码相关信息,直接打包成文件夹,复制到项目中,或者项目本身就直接嵌入这些一个项目常用的模块,当然,不会像网上低代码平台那样,项目本身就带有这些模块,如果是中小型公司开发一些常规互联网项目,用不上这么多东西,所以我们做成代码+模块的方式进行装配或者进行复制粘贴

项目架构图

模块介绍

qboot
├─qboot-admin【启动模块】项目启动类,负责启动整个服务端项目
├─qboot-dependencies【依赖模块】管理整个项目所有依赖版本
├─qboot-core【核心模块】项目核心配置,存放所有配置信息
├─qboot-common【工具模块】项目通用工具,存放全局通用工具类
├─qboot-system【系统模块】负责系统管理相关功能,权限必备模块
├─qboot-extend【扩展模块】负责项目集成第三方或者模块扩展
│  ├─qboot-extend-generate【代码生成】负责项目代码生成、项目生成
│  ├─qboot-extend-monitor【监控模块】负责Redis、Druid、服务器等信息监控
│  ├─qboot-extend-oss-local【对象存储本地】
│  ├─qboot-extend-file-storage【对象存储FileStorage】
│  ├─qboot-extend-quartz【定时任务Quartz】

内置功能

通常情况下,系统内置的功能只有如上几点,所以内置功能就不做过多的增加,只有必须的内置相关功能,如果您觉得不合适,或者想增加、减少某个功能,可以在 issue 提出想法,或者在交流群中一起交流学习!

已完成内置功能

直接查看预览链接即可,后台功能后续会主键完善文档

即将开发内置功能

  • 配置加密
  • 请求加密
  • 日志脱敏
  • 多数据源
  • 读写分离
  • 事物管理
  • 租户管理
  • 定时任务
  • 微信管理
  • 支付管理
  • 即时通讯
  • 商品管理
  • 消息中间件
  • 对象存储

框架知识点

怎么样开发和设计一个这样的框架?这是很多小伙伴不会的点,市面上有很多低代码平台,也只能直接拉取代码部署到本地,然后代码生成就开始写业务了。这个确实是一个比较漫长的过程,我的目标就是搭建一套极其简约的开源权限管理框架!

技术选型

服务端框架选型

框架 版本 框架 版本
qboot 1.0.0 java 1.8
mybatis-plus-boot-starter 3.5.2 dynamic-datasource-spring-boot-starter 3.6.1
druid-spring-boot-starter 1.2.15 mysql-connector-java 5.1.47
knife4j-spring-boot-starter 2.0.9 sa-token-spring-boot-starter 1.33.0
spring-boot-admin-starter 2.6.10 sa-token-dao-redis-jackson 1.33.0
sa-token-jwt 1.33.0 easypoi-spring-boot-starter 4.4.0
fastjson 1.2.75 lombok 1.18.20
hutool-all 5.8.10 velocity-engine-core 2.3
oshi-core 6.3.2 ip2region 1.7.2
screw-core 1.0.5

PC 端框架选型

框架 版本 框架 版本
ant-design-vue "^1.7.8 axios "^0.24.0
core-js "^3.19.2 echarts "^5.2.2
file-saver "^2.0.5 highlight.js "9.18.5
lodash.clonedeep "^4.5.0 lodash.get "^4.4.2
lodash.pick "^4.4.0 md5 "^2.3.0
moment "^2.29.1 nprogress "^0.2.0
qs "^6.10.1 screenfull "5.0.2
store "^2.0.12 vue "^2.6.14
vue-clipboard2 "^0.3.3 vue-container-query "^0.1.0
vue-copy-to-clipboard "^1.0.3 vue-cropper "0.5.8
vue-i18n "^8.24.2 vue-router "^3.5.1
vue-svg-component-runtime "^1.0.1 vuex "^3.6.2
wangeditor "^4.7.10

开发流程

开发一个完整的项目脚手架或者项目,需要从哪里开始做?这里简单的说一下实际流程大概是什么样子的:

  • 确定需求
  • 分析业务
  • 数据建模(很多公司没有建模这个过程)
  • 设计数据库、表,确定具体字段
  • 代码生成
  • 修改代码生成后的缺陷(如关联表的一些信息)
  • 确定前端所需的接口是否完整(web 端、手机端等)
  • 按照 UI 图编写客户端页面
  • 测试完整流程
  • 建议多加一步,检查数据库数据是否完全准确

交流学习

框架基础功能会参照各大低代码平台的功能开发,企业中常见的一些实际业务集成,会通过微信群等渠道,和全国各地的网友讨论之后,不断优化,增加或者减少功能模块,维护功能或优化,可以大家一起参与进来,利用业余摸鱼时间来学习和掌握一个自己完全熟悉的框架

目前我们都是通过微信交流群来交流学习的,或者在码云仓库上面提交 Issue 一起参与讨论与研究

提问&捐赠

觉得有用,可以 Star 一下仓库哟!或者请作者吃一包辣条!

微信捐赠 支付宝捐赠
MIT License Copyright (c) 2023 Tellsea Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

QBoot 是 基于 SpringBoot + Mybatis Plus + Sa-Token 等主流开源框架集成的一个权限管理系统 展开 收起
Java
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/tellsea/qboot.git
git@gitee.com:tellsea/qboot.git
tellsea
qboot
QBoot
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891