# QBoot **Repository Path**: xdr630/qboot ## Basic Information - **Project Name**: QBoot - **Description**: QuickBoot 是 基于 SpringBoot + Mybatis Plus + Sa-Token 等主流开源框架集成的一个权限管理系统 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2023-02-04 - **Last Updated**: 2023-02-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # QBoot # 项目介绍 ## 相关链接 - [QBoot 服务端源码](https://gitee.com/tellsea/qboot) - [QBoot 管理端源码](https://gitee.com/tellsea/qboot-antdvue) - [QBoot 移动端源码(开发中)](https://gitee.com/tellsea/qboot-uniapp) - [QBoot 在线预览:账号:admin、密码:123456](https://qboot.gzhzyf.com/) ## 项目背景 本项目采用最简单的方式来实现一套项目脚手架!系统功能,或者相关依赖,都是尽量写的最简化,并不会过多的定制功能,导致实际开发中不灵活等问题,又或者不敢随意增加、删除某个模块或功能,从我编写或设计这个框架的角度来分析,尽量避免的这种问题的发生,让使用者能够随意修改或者替换项目中使用的框架或者组件等 很多开发几年的小伙伴从事工作之后,都是不断的写业务 CURD,公司都是有自己的一套开发模板或框架,又或者说使用的是一套低代码平台,比如说若依、jeecg、人人开源等,咸鱼都不怎么关心它里面的基础模块、认证授权、代码生成等模块的实现方法,充当一个无情的 CRUD 工具人,所以这里以文章 + 技术实现的方式,给各位小伙伴做一套基于 SpringBoot 的权限管理系统,然后基于实战业务,针对不同的业务模块,直接构建相关的基础功能,让集成其他业务更加的简单,正所谓万事开头难。 例如:微信公众号授权登录,像这种常用业务,每个项目都要去复制粘贴一遍,虽然代码改动比较小了,但是终归还是要去梳理一遍逻辑,我们可以直接搭建一套模板,把需要的代码相关信息,直接打包成文件夹,复制到项目中,或者项目本身就直接嵌入这些一个项目常用的模块,当然,不会像网上低代码平台那样,项目本身就带有这些模块,如果是中小型公司开发一些常规互联网项目,用不上这么多东西,所以我们做成代码+模块的方式进行装配或者进行复制粘贴 ## 技术选型 后端技术选型 ```xml 1.0.0 1.8 UTF-8 UTF-8 2.5.14 3.5.2 1.2.15 5.1.47 3.0.3 1.33.0 1.33.0 1.33.0 4.4.0 1.2.75 1.18.20 5.8.10 2.3 6.3.2 1.7.2 ``` 前端技术选型 ```json "dependencies": { "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" } ``` ## 内置功能 > 通常情况下,系统内置的功能只有如上几点,所以内置功能就不做过多的增加,只有必须的内置相关功能,如果您觉得不合适,或者想增加、减少某个功能,可以在 issue 提出想法,或者在交流群中一起交流学习! ## 开发流程 开发一个完整的项目脚手架或者项目,需要从哪里开始做?这里简单的说一下实际流程大概是什么样子的: - 确定需求 - 分析业务 - 数据建模(很多公司没有建模这个过程) - 设计数据库、表,确定具体字段 - 代码生成 - 修改代码生成后的缺陷(如关联表的一些信息) - 确定前端所需的接口是否完整(web 端、手机端等) - 按照 UI 图编写客户端页面 - 测试完整流程 - 建议多加一步,检查数据库数据是否完全准确 ## 模块设计 | 模块名 | 作用 | | ------------------------ | ------------------------------------------------------ | | qboot-start | 启动模块,处理接口请求,调用 API | | qboot-common | 公共模块,所有模块都有公共模块依赖,属于底层依赖 | | qboot-core | 核心模块,负责项目的鉴权授权、拦截监听等功能的具体实现 | | qboot-tool-generate | 代码生成模块,一键生成代码 | | qboot-system | 系统模块,全部系统内置功能 | | qboot-business-test | 业务测试模块,用于测试各种方法、接口、校验权限是否完整 | ## 交流学习 框架基础功能会参照各大低代码平台的功能开发,企业中常见的一些实际业务集成,会通过微信群等渠道,和全国各地的网友讨论之后,不断优化,增加或者减少功能模块,维护功能或优化,可以大家一起参与进来,利用业余摸鱼时间来学习和掌握一个自己完全熟悉的框架 目前我们都是通过微信交流群来交流学习的,或者在码云仓库上面提交 Issue 一起参与讨论与研究 # 业务扩展 # 开发日志 目前将要开发的功能有