1 Star 2 Fork 0

RickSun / fastboot

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

iFillDream公众号

一款基于SpringBoot的快速构建框架,致力于每个项目的高效开发.

code style code style code style code style code style

简介 | Intro

  FastBoot是一款基于SpringBoot的脚手架,简单方便,外包私活神器。
  我们希望FastBoot越来越简洁、规范、高效,希望有更多的小伙伴们加入我们,同时也希望大家指出FastBoot不合理的地方
  FastBoot文档,若打不开表示我们经费有限服务器可能过期了,买不起了

版本 | Version

FastBoot未开源时就已经存在,但没有命名且不叫FastBoot,大致版本如下:

  • FastBoot0.X:2020.05.07-2020.06.16

  • FastBoot1.X:2020.06.17-2020.10.22

  • FastBoot2.0:2020.10.22-2021.10.09

  • FastBoot2.0.3:2021.10.09-2023.03.23

  • FastBoot2.0.4:2023.03.23-2024.01.16

  • FastBoot2.0.5:2024.01.16-至今

  • 当前版本:2.0.5.003

更新日志请参考Wiki文档

优点 | Advantages

  • 快速:复制框架修改相关配置即可开始编写业务代码
  • 统一token:全局使用统一token来鉴权,使开发更加容易;通过passToken来加密请求,可以快速鉴别请求方的身份是否合法。
  • 快速追踪BUG:可以更加灵活的设置友好的错误提示,异常报错能够以钉钉信息的方式提醒开发者,也可通过报错提醒快速定位到问题所在位置;
  • 实时项目日志:引入WebSocket可以将项目日志输出到浏览器,通过颜色的区分,方便开发者快速定位问题和查看Sql等信息
  • 中间件:整合了ActiveMq、WebSocket等
  • 权限控制:由于shiro太重了,所以自定义了拦截器进行角色权限鉴权
  • 定时任务:引入quartz定时任务,可动态实现任务的添加、修改、删除、暂停、恢复等功能
  • 第三方接口:整合微信登陆、微信支付、微信模板推送、OSS、短信、聚合-快递查询等第三方接口

文档 | Documentation

(一)、基本简介

(二)、快速开始

1、将代码从Git仓下载下来  
2、以下配置按具体需求修改  
    ·根据需要修改各类包名和路径名  
    ·修改打包finalName(看需求修改)  
3、修改配置文件、日志文件、数据库、Redis、中间件等  
4、填充自己的业务  
帮助

·若出现配置文件字符格式不对,请设置编辑器的编码为UTF8
idea:File->Setting->Editor->FileEncoding

(三)、管理员权限说明

1、菜单共两大类型:菜单和非菜单,菜单拥有下级,非菜单没有下级
2、删除菜单时需要先将子菜单删除,避免误删除
3、可以整体移动菜单排序,也可添加和修改菜单
4、角色分为系统角色和其他角色,系统角色是系统级别角色,而其他角色则可以用来区别公司之用,若项目不区分公司则都可为系统角色
5、角色拥有父级角色,当父级角色ID为0时表示系统最高级别管理员角色
6、添加角色时上级角色ID为当前登陆的用户角色ID
7、修改角色时不允许修改父级ID
8、若有管理员使用角色或有子级角色则不允许删除,删之则可删
9、设置权限时必须输入包括父子级菜单在内的ID,而不仅仅输入非菜单的叶子节点的ID
10、每个角色只能在其父级角色中挑选菜单,即子级角色小于等于父级角色,例如:
  A角色拥有菜单:a,b,c
  B角色(A的子级)拥有的菜单必须是a,b,c中的
11、查询角色权限时,当角色父级ID为0时则展示所有权限
12、若分公司时,管理员可指定关联id即link_id
13、系统级角色可以看到所有角色,而其他角色只能看到自己关联的ID的管理员的角色
14、非系统级管理员看不到系统级管理员,只能看到自己关联ID的管理员

(四)、目录结构

|--fastboot-base
|----base 业务数据模块
|------config 数据源、mybatis配置
|------entity 数据库生成的bean类
|------mapper 数据库生成的mapper类
|------request 业务请求Request类即STO
|------response 业务返回DTO
|----CodeGeneration 代码生成器
|--resources
|----mapper 数据库ORM XML文件

|--fastboot-common
|----common 通用标准模块
|------annotation 自定义注解
|------constant 通用常量
|------exception 自定义异常
|------entity 基本Bean、返回类
|------util 工具包
|--------entity 工具类依赖的bean
|--resources

|--fastboot-core
|----core 业务核心模块
|------cache 缓存相关
|------event 事件
|---------listener 监听事件
|------job 定时任务
|---------job 任务Bean
|------manager 缓存以及下沉管理
|------mq Mq消息中间件
|------service 业务service
|--------impl 业务实现impl
|--resources

|--fastboot-web
|----web 应用控制模块
|------config 拦截器/跨域/时间等配置
|------controller 应用Controller层
|------filter 异常拦截器
|----FastBootApplication 项目启动类
|--resources properties配置

鸣谢 | Thanks

排名不分先后

  • HuTool 是一个小而全的Java工具类库
  • 个人贡献者:RickSun、张曦

免责说明 | Disclaimer

FastBoot仅供学习使用,禁止商用,私有或贩卖,使用时请标注开源来源

BUG及问题 | Issues

若出现问题或您有好的建议,可以在FastBoot中提交Issues,可以关注我们的公众号,我们将重视您提交的内容并做出响应

关注我 | About Me

笔记有云

Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

简介

基于SpringBoot的脚手架-FastBoot2.0 展开 收起
Java 等 2 种语言
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/sunalee/fastboot.git
git@gitee.com:sunalee/fastboot.git
sunalee
fastboot
fastboot
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891