SaaS 微服务脚手架 zuihou-admin-boot

Apache
Java
跨平台
2020-04-15
最后_

zuihou-admin-boot 是基于`SpringBoot` 的 SaaS型前后端分离脚手架,具备用户管理、资源权限管理、Xss防跨站攻击、代码自动生成、多存储系统、分布式定时任务等多个模块,可以作为后端服务的开发脚手架。代码简洁,架构清晰,非常适合学习和企业中使用。希望能努力打造一套从 SaaS基础框架 - 单体架构 - 持续集成 - 自动化部署 - 系统监测 的解决方案。

核心技术采用SpringBoot、Mybatis、JWT Token、Redis、RibbitMQ、FastDFS、Vue等主要框架和中间件。

功能点介绍:

1. 服务鉴权:

    通过JWT的方式来加强服务之间调度的权限验证,保证内部服务的安全性。

2. 数据权限

    利用基于Mybatis的DataScopeInterceptor拦截器实现了简单的数据权限

3. SaaS(多租户)的无感解决方案

    使用Mybatis拦截器实现对所有SQL的拦截,修改默认的Schema,从而实现多租户数据隔离的目的。 并且支持可插拔。

4. 二级缓存

    采用J2Cache操作缓存,第一级缓存使用内存(Caffeine),第二级缓存使用 Redis。 由于大量的缓存读取会导致 L2 的网络成为整个系统的瓶颈,因此 L1 的目标是降低对 L2 的读取次数。该缓存框架主要用于集群环境中。单机也可使用,用于避免应用重启导致的缓存冷启动后对后端业务的冲击。

5. 优雅的Bean转换

    采用Dozer组件来对 DTO、DO、PO等对象的优化转换

6. 前后端统一表单验证

    严谨的表单验证通常需要 前端+后端同时验证, 但传统的项目,均只能前后端各做一次检验, 后期规则变更,又得前后端同时修改。故在`hibernate-validator`的基础上封装了`zuihou-validator-starter`起步依赖,提供一个通用接口,可以获取需要校验表单的规则,然后前端使用后端返回的规则,以后若规则改变,只需要后端修改即可。

7. 防跨站脚本攻击(XSS)
    
    - 通过过滤器对所有请求中的 表单参数 进行过滤
    - 通过Json反序列化器实现对所有 application/json 类型的参数 进行过滤
    
8. 当前登录用户信息注入器
    
    - 通过注解实现用户身份注入
    
9. 在线API

    由于原生swagger-ui某些功能支持不够友好,故采用了国内开源的`swagger-bootstrap-ui`,并制作了stater,方便springboot用户使用。

10. 代码生成器

    基于Mybatis-plus-generator自定义了一套代码生成器, 通过配置数据库字段的注释,自动生成枚举类、数据字典注解、SaveDTO、UpdateDTO、表单验证规则注解、Swagger注解等。

11. 定时任务调度器:

    基于xxl-jobs进行了功能增强。(如:指定时间发送任务、执行器和调度器合并项目、多数据源)

12. 大文件/断点/分片续传

    前端采用webupload.js、后端采用NIO实现了大文件断点分片续传,启动Eureka、Zuul、File服务后,直接打开docs/chunkUploadDemo/demo.html即可进行测试。经测试,本地限制堆栈最大内存128M启动File服务,5分钟内能成功上传4.6G+的大文件,正式服耗时则会受到用户带宽和服务器带宽的影响,时间比较长。

13. 跨表、跨库、跨服务的关联数据自动注入器

    用于解决跨表、跨库、跨服务分页数据的属性或单个对象的属性 回显关联数据之痛, 支持对静态数据属性(数据字典)、动态主键数据进行自动注入。

页面预览:

的码云指数为
超过 的项目
加载中
请先登录后再评论。

zuihou-admin-boot 2.4.0 发布,微服务脚手架

今日更新日志: 1. 用户信息返回给前端时,忽略密码字段 2. 修复zuihou-ui - 用户管理 - 修改用户信息时,会将用户密码多次修改的bug 3. 修复zuihou-ui - 用户管理 - 新增单独的修改密码功能 ...

08/07 12:50

zuihou-admin-boot 2.4 发布,SaaS 脚手架

今日更新日志: 整体更新: 1. 新增批量替换项目名&包名&前缀的Shells脚本(支持Linux&Mac) 2. 录制了完整的项目讲解视频教程 3. 优化代码若干 & 删除无用代码和注释掉的代码若干 & 完善代码...

07/15 10:53

zuihou-admin-boot 2.2 发布,租户模式支持动态新增数据源

今日更新日志: 新增: 1. 新增分布式定时任务执行器(现在同时支持单机定时执行和分布式定时执行) 优化: 1. 优化代码生成器模版文件,减少依赖项 2. 优化 Swagger自动配置项,支持设置认证...

04/20 10:49

没有更多内容

加载失败,请刷新页面

没有更多内容

暂无问答

spring boot admin

公司最近app后台奔溃的比较频繁。我基于之前的经验,搭建spring boot admin。不然面对问题,就像是瞎子,不知从和下手。 1.*的版本可以参考下面的文章 使用spring-boot-admin对spring-boot服...

06/26 15:37
166
0
Spring Boot Admin 的使用

如果需要自定义定制监控,参考资料:http://www.jianshu.com/p/e20a5f42a395 一、前言 spring Boot Admin 用于监控基于 Spring Boot 的应用。官方文档在这里(v1.4.4):http://codecentric....

2016/12/14 10:49
2.7K
0
Spring Boot Admin

管理服务器端 pom.xml 1      <dependency> 2 <groupId>de.codecentric</groupId> 3 <artifactId>spring-boot-admin-starter-server</artifactId> 4 ...

2019/03/28 14:40
46
0
Spring Boot Admin的使用

前面的文章我们讲了Spring Boot的Actuator。但是Spring Boot Actuator只是提供了一个个的接口,需要我们自行集成到监控程序中。今天我们将会讲解一个优秀的监控工具Spring Boot Admin。 它采...

02/24 17:24
183
0
Spring Boot Admin的使用

Spring Boot Admin的使用 前面的文章我们讲了Spring Boot的Actuator。但是Spring Boot Actuator只是提供了一个个的接口,需要我们自行集成到监控程序中。今天我们将会讲解一个优秀的监控工具...

03/13 10:12
9
0
Spring Boot Admin 2.1.0

原文:https://blog.csdn.net/forezp/article/details/86105850 Spring Boot Admin简介 Spring Boot Admin是一个开源社区项目,用于管理和监控SpringBoot应用程序。 应用程序作为Spring Boot...

2019/08/16 10:27
54
0
Spring Boot Admin集成

参考官方文档(http://codecentric.github.io/spring-boot-admin/2.0.2/#getting-started),快速集成Spring Boot Admin。 1. 服务端 1.1 maven添加类库 <dependency> <groupId>de.codecentr...

2018/08/03 16:10
771
0
Spring Boot Admin 的使用

Spring Boot 版本: 1.5.20 一、Spring Boot Admin Server 1、在pom.xml中增加 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web...

2019/04/18 16:05
33
0
Spring Boot Admin的使用

文章目录 配置Admin Server 配置admin client 配置安全主键 Hazelcast集群 Spring Boot Admin的使用 前面的文章我们讲了Spring Boot的Actuator。但是Spring Boot Actuator只是提供了一个个的...

04/11 20:51
5
0
Spring Boot Admin简介及实践

#Spring Boot Admin简介及实践 ##来源背景 codecentric的Spring Boot Admin是一个社区项目, 用于管理和监视您的Spring Boot®应用程序。这些应用程序在我们的 Spring Boot Admin Client中注...

08/02 14:08
47
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部