发布时间:2020-07-11 19:45:22来源:阅读:
1. 唯一Id生成器换成 hutool 的 IdUtil
2. 关联字段数据注入工具(zuihou-injection-starter) 增加guava本地缓存,加快注入速度, 完善注释。
3. 使用MP提供的自定义枚举类型转换器,修复 数据库中枚举字段的值不存在时,报错的bug
4. 使用hutool工具类优化操作日志记录的异常消息
5. 标记core下的一些工具类为过时,拥抱Hutool
6. 新增 参数管理 相关功能,用于配置系统全局参数或租户个性化参数。
7. 修复 关联字段数据注入工具 缓存查询的一个bug
8. 代码生成器相关bug修复,并新增 前端页面生成 功能。
9. 完善在线文档相关功能
10. 录制代码生成器、数据注入工具 使用视频
基于`SpringCloud(Hoxton.SR1)` + `SpringBoot(2.2.2.RELEASE)` 的 SaaS型微服务脚手架,具备用户管理、资源权限管理、网关统一鉴权、Xss防跨站攻击、自动代码生成、多存储系统、分布式事务、分布式定时任务等多个模块,支持多业务系统并行开发,支持多服务并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,非常适合学习使用。核心技术采用Nacos、Fegin、Ribbon、Zuul、Hystrix、JWT Token、Mybatis、SpringBoot、Seata、Nacos、Sentinel、RabbitMQ、FastDFS等主要框架和中间件。
希望能努力打造一套从 SaaS基础框架 - 分布式微服务架构 - 自动化部署 - 系统监测 的解决方案。本项目旨在实现基础能力,不涉及具体业务。
服务注册与调用:
基于Eureka来实现的服务注册与调用,在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。
服务鉴权:
通过JWT的方式来加强服务之间调度的权限验证,保证内部服务的安全性。
负载均衡:
将服务保留的rest进行代理和网关控制,除了平常经常使用的node.js、nginx外,Spring Cloud系列的zuul和ribbon,可以帮我们进行正常的网关管控和负载均衡。其中扩展和借鉴国外项目的扩展基于JWT的Zuul限流插件,方面进行限流。
熔断机制:
因为采取了服务的分布,为了避免服务之间的调用“雪崩”,采用了Hystrix的作为熔断器,避免了服务之间的“雪崩”。
监控:
利用Spring Boot Admin 来监控各个独立Service的运行状态;利用turbine来实时查看接口的运行状态和调用频率;通过Zipkin来查看各个服务之间的调用链等。
数据权限:
利用基于Mybatis的DataScopeInterceptor拦截器实现了简单的数据权限
SaaS的无感解决方案:
使用Mybatis拦截器实现对所有SQL的拦截,修改默认的Schema,从而实现多租户数据隔离的目的。
二级缓存:
采用J2Cache操作缓存,第一级缓存使用内存(Caffeine),第二级缓存使用 Redis。 由于大量的缓存读取会导致 L2 的网络成为整个系统的瓶颈,因此 L1 的目标是降低对 L2 的读取次数。 该缓存框架主要用于集群环境中。单机也可使用,用于避免应用重启导致的缓存冷启动后对后端业务的冲击。
优雅的Bean转换:
采用Dozer组件来对 DTO、DO、PO等对象的优化转换
前后端统一表单验证:
严谨的表单验证通常需要 前端+后端同时验证, 但传统的项目,均只能前后端各做一次检验, 后期规则变更,又得前后端同时修改。 故在hibernate-validator的基础上封装了zuihou-validator-starter起步依赖,提供一个通用接口,可以获取需要校验表单的规则,然后前端使用后端返回的规则, 以后若规则改变,只需要后端修改即可。
防跨站脚本攻击(XSS):
通过过滤器对所有请求中的 表单参数 进行过滤 通过Json反序列化器实现对所有 application/json 类型的参数 进行过滤当前用户信息注入器:
通过注解实现用户身份注入
在线API:
由于原生swagger-ui某些功能支持不够友好,故采用了国内开源的 knife4j ,并制作了stater,方便springboot用户使用。
代码生成器:
基于Mybatis-plus-generator自定义了一套代码生成器, 通过配置数据库字段的注释,自动生成枚举类、数据字典注解、SaveDTO、UpdateDTO、表单验证规则注解、Swagger注解等。
定时任务调度器:
基于xxl-jobs进行了功能增强。(如:指定时间发送任务、执行器和调度器合并项目、多数据源)
汉化 Eureka 注册中心页面:
请切换分支进行查看
大文件/断点/分片续传:
前端采用webupload.js、后端采用NIO实现了大文件断点分片续传,启动Eureka、Zuul、File服务后,直接打开docs/chunkUploadDemo/demo.html即可进行测试。 经测试,本地限制堆栈最大内存128M启动File服务,5分钟内能成功上传4.6G+的大文件,正式服耗时则会受到用户带宽和服务器带宽的影响,时间比较长。
分布式事务:
集成了阿里的分布式事务中间件:seata,以 高效 并且对业务 0侵入 的方式,解决 微服务 场景下面临的分布式事务问题。
关联数据自动注入:
用于解决跨表、跨库、跨服务分页数据的属性或单个对象的属性 回显关联数据之痛, 支持对静态数据属性(数据字典)、动态主键数据进行自动注入。
Nextcloud下载
38.4MB
icloud控制面板 v7.4.0.111 官方版
151MB
pageadmin网站管理系统(企业级网站管理工具) V3.0.20151204 最新版
8.6MB
2寸照片生成器(标准照片自动调整软件)v1.0 免费版
453KB
AI全自动剪辑软件 v10.1 官方版
162.5M
EXCEL全自动检索录入 v10.0.0.0免费版
2.11 MB
EximiousSoft Logo Designer Pro(logo设计生成软件) v3.10破解版下载
55.07MB
PartitionMagic(PQ)9.00.4156 支持FAT32、NTFS分区 汉化绿色精简版
4.1M
Pictures Thumbnails Maker Platinum (图片缩略图生成软件)下载 v3.0.0.0官方版
3.8M
b站录播机(自动录屏软件) v1.6.10 破解版
129.1M
psdcodec(psd缩略图补丁) v1.6.1 中文注册版 支持win7/win8/win10
1.44M
万能文书单据在线生成软件(合同、单据制作工具) v1.03.0029官方版
9.5M
心蓝IP自动更换器官方版 v1.0.0.2
5.5M
文件自动分类 v3.3 绿色版
288.11K
真空密码字典生成器下载
1.3M
绿点鼠标自动点击器(鼠标自动点击工具) 3.20 中文版
2.34MB
艺术字体生成器 v1.0 绿色版
10.2M
Apiadmin下载
30.6M
DirectX repair
200M
JustManager 64位 v0.1.0.0
1005.65 KB
2020-04-26
从普通大学生、女玩家到进入游戏行业,我用了三个月
IdeaPadY470在win7系统下外接HDMI无法输出声音的案例分析
B300一体机,在Windows XP系统下,网卡驱动下载及安装过程
Lenovo C340一体机BIOS设置界面模拟器
蓝牙状态指示灯不亮
鸿蒙系统出来了我们的安卓游戏账号会怎么样?
如何找回淘宝中的购买记录
Windows 8:恢复系统与重装系统
观看优酷、腾讯等网络视频时出现画面上下分屏、花屏、绿屏等的解决思路