源码分享!基于SpringBoot2.x、SpringCloud和SpringCloudAlibaba并采用前后端分离的企业级微服务敏捷开发系统架构

osc_fqkqiook 2020-11-10 10:57:03
微信小程序 Spring Boot Spring Cloud Spring Cloud Alibaba uni-app


基于springboot cloud构建的一个商城项目,包括前端,后端和h5应用,小程序,作为zscat应用实践的模板项目。基于SpringBoot2.x、SpringCloud和SpringCloudAlibaba并采用前后端分离的企业级微服务敏捷开发系统架构。并引入组件化的思想实现高内聚低耦合,[ 微信 + 支付宝 + 百度 + 头条 ] 小程序 + APP + 公众号 + PC + H5 项目代码简洁注释丰富上手容易,适合学习和企业中使用。真正实现了基于RBAC、jwt和oauth2的无状态统一权限认证的解决方案,面向互联网设计同时适合B端和C端用户,支持CI/CD多环境部署,积分商城,分销商城并提供应用管理方便第三方系统接入;同时还集合各种微服务治理功能和监控功能。模块包括:企业级的认证系统、开发平台、应用监控、慢sql监控、统一日志、单点登录、Redis分布式高速缓存、配置中心、分布式任务调度、接口文档、代码生成等等

1.项目技术

  • 前后端分离的企业级微服务架构
  • 基于Spring Boot 2.0.X、Spring Cloud Finchley和Spring Cloud Alibaba
  • 深度定制Spring Security真正实现了基于RBAC、jwt和oauth2的无状态统一权限认证的解决方案
  • 提供应用管理,方便第三方系统接入
  • 引入组件化的思想实现高内聚低耦合,项目代码简洁注释丰富上手容易
  • 注重代码规范,严格控制包依赖,每个工程基本都是最小依赖
  • 非常适合学习和企业中使用

2. 项目总体架构图

需要获取源码的朋友点赞这篇文章+关注我,扫码获取!

基于SpringBoot Cloud构建的一个商城项目源码分享

 

3. 功能介绍

  • 统一认证功能支持oauth2的四种模式登录支持用户名、密码加图形验证码登录支持手机号加密码登录支持openId登录支持第三方系统单点登录
  • 分布式系统基础支撑服务注册发现、路由与负载均衡服务降级与熔断服务限流(url/方法级别)统一配置中心统一日志中心统一分布式缓存操作类、cacheManager配置扩展分布式锁分布式任务调度器支持CI/CD持续集成(包括前端和后端)分布式高性能Id生成器分布式事务
  • 系统监控功能服务调用链监控应用拓扑图慢服务检测服务Metric监控应用监控(应用健康、JVM、内存、线程)错误日志查询慢查询SQL监控应用吞吐量监控(qps、rt)服务降级、熔断监控服务限流监控分库分表、读写分离
  • 业务基础功能支撑高性能方法级幂等性支持RBAC权限管理,实现细粒度控制(方法、url级别)快速实现导入、导出功能数据库访问层自动实现crud操作代码生成器基于Hutool的各种便利开发工具网关聚合所有服务的Swagger接口文档统一跨域处理统一异常处理

4. 模块说明

mallcloud -- 父项目,公共依赖
│ ├─mall-business -- 业务模块一级工程
│ │ ├─user-center -- 用户中心[7000]
│ │ ├─file-center -- 文件中心[5000]
│ │ ├─member-center -- 会员中心[7001]
│ │ ├─goods-center -- 商品中心[7002]
│ │ ├─order-center -- 订单中心[7003]
│ │ ├─marking-center -- 营销中心[7004]
│ │─mall-commons -- 通用工具一级工程
│ │ ├─mall-auth-client-spring-boot-starter -- 封装spring security client端的通用操作逻辑
│ │ ├─mall-common-spring-boot-starter -- 封装通用操作逻辑
│ │ ├─mall-db-spring-boot-starter -- 封装数据库通用操作逻辑
│ │ ├─mall-log-spring-boot-starter -- 封装log通用操作逻辑
│ │ ├─mall-redis-spring-boot-starter -- 封装Redis通用操作逻辑
│ │ ├─mall-ribbon-spring-boot-starter -- 封装Ribbon和Feign的通用操作逻辑
│ │ ├─mall-sentinel-spring-boot-starter -- 封装Sentinel的通用操作逻辑
│ │ ├─mall-swagger2-spring-boot-starter -- 封装Swagger通用操作逻辑
│ ├─mall-config -- 配置中心
│ ├─mall-doc -- 项目文档
│ ├─mall-gateway -- api网关一级工程
│ │ ├─zuul-gateway -- netflix-zuul[8080]
│ ├─mall-job -- 分布式任务调度一级工程
│ │ ├─job-admin -- 任务管理器[8081]
│ │ ├─job-core -- 任务调度核心代码
│ │ ├─job-executor-samples -- 任务执行者executor样例[8082]
│ ├─mall-monitor -- 监控一级工程
│ │ ├─sc-admin -- 应用监控[6500]
│ │ ├─log-center -- 日志中心[6200]
│ ├─mall-uaa -- spring-security认证中心[8000]
│ ├─mall-register -- 注册中心Nacos[8848]
│ ├─mall-transaction -- 事务一级工程
│ │ ├─txlcn-tm -- tx-lcn事务管理器[7970]
│ ├─mall-demo -- demo一级工程
│ │ ├─txlcn-demo -- txlcn的demo
│ │ ├─sharding-jdbc-demo -- sharding-jdbc的demo

后台功能列表

基于SpringBoot Cloud构建的一个商城项目源码分享

 

小程序功能列表

基于SpringBoot Cloud构建的一个商城项目源码分享

 

uniapp

uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架,开发者编写一套代码,可编译到iOS、Android、H5、小程序等多个平台。

5. 截图(点击可大图预览)

基于SpringBoot Cloud构建的一个商城项目源码分享

 

基于SpringBoot Cloud构建的一个商城项目源码分享

 

基于SpringBoot Cloud构建的一个商城项目源码分享

 

基于SpringBoot Cloud构建的一个商城项目源码分享

 

基于SpringBoot Cloud构建的一个商城项目源码分享

 

基于SpringBoot Cloud构建的一个商城项目源码分享

 

基于SpringBoot Cloud构建的一个商城项目源码分享

 

基于SpringBoot Cloud构建的一个商城项目源码分享

 

需要获取源码的朋友点赞这篇文章+关注我,扫码获取!

版权声明
本文为[osc_fqkqiook]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4312696/blog/4710707

  1. 【计算机网络 12(1),尚学堂马士兵Java视频教程
  2. 【程序猿历程,史上最全的Java面试题集锦在这里
  3. 【程序猿历程(1),Javaweb视频教程百度云
  4. Notes on MySQL 45 lectures (1-7)
  5. [computer network 12 (1), Shang Xuetang Ma soldier java video tutorial
  6. The most complete collection of Java interview questions in history is here
  7. [process of program ape (1), JavaWeb video tutorial, baidu cloud
  8. Notes on MySQL 45 lectures (1-7)
  9. 精进 Spring Boot 03:Spring Boot 的配置文件和配置管理,以及用三种方式读取配置文件
  10. Refined spring boot 03: spring boot configuration files and configuration management, and reading configuration files in three ways
  11. 精进 Spring Boot 03:Spring Boot 的配置文件和配置管理,以及用三种方式读取配置文件
  12. Refined spring boot 03: spring boot configuration files and configuration management, and reading configuration files in three ways
  13. 【递归,Java传智播客笔记
  14. [recursion, Java intelligence podcast notes
  15. [adhere to painting for 386 days] the beginning of spring of 24 solar terms
  16. K8S系列第八篇(Service、EndPoints以及高可用kubeadm部署)
  17. K8s Series Part 8 (service, endpoints and high availability kubeadm deployment)
  18. 【重识 HTML (3),350道Java面试真题分享
  19. 【重识 HTML (2),Java并发编程必会的多线程你竟然还不会
  20. 【重识 HTML (1),二本Java小菜鸟4面字节跳动被秒成渣渣
  21. [re recognize HTML (3) and share 350 real Java interview questions
  22. [re recognize HTML (2). Multithreading is a must for Java Concurrent Programming. How dare you not
  23. [re recognize HTML (1), two Java rookies' 4-sided bytes beat and become slag in seconds
  24. 造轮子系列之RPC 1:如何从零开始开发RPC框架
  25. RPC 1: how to develop RPC framework from scratch
  26. 造轮子系列之RPC 1:如何从零开始开发RPC框架
  27. RPC 1: how to develop RPC framework from scratch
  28. 一次性捋清楚吧,对乱糟糟的,Spring事务扩展机制
  29. 一文彻底弄懂如何选择抽象类还是接口,连续四年百度Java岗必问面试题
  30. Redis常用命令
  31. 一双拖鞋引发的血案,狂神说Java系列笔记
  32. 一、mysql基础安装
  33. 一位程序员的独白:尽管我一生坎坷,Java框架面试基础
  34. Clear it all at once. For the messy, spring transaction extension mechanism
  35. A thorough understanding of how to choose abstract classes or interfaces, baidu Java post must ask interview questions for four consecutive years
  36. Redis common commands
  37. A pair of slippers triggered the murder, crazy God said java series notes
  38. 1、 MySQL basic installation
  39. Monologue of a programmer: despite my ups and downs in my life, Java framework is the foundation of interview
  40. 【大厂面试】三面三问Spring循环依赖,请一定要把这篇看完(建议收藏)
  41. 一线互联网企业中,springboot入门项目
  42. 一篇文带你入门SSM框架Spring开发,帮你快速拿Offer
  43. 【面试资料】Java全集、微服务、大数据、数据结构与算法、机器学习知识最全总结,283页pdf
  44. 【leetcode刷题】24.数组中重复的数字——Java版
  45. 【leetcode刷题】23.对称二叉树——Java版
  46. 【leetcode刷题】22.二叉树的中序遍历——Java版
  47. 【leetcode刷题】21.三数之和——Java版
  48. 【leetcode刷题】20.最长回文子串——Java版
  49. 【leetcode刷题】19.回文链表——Java版
  50. 【leetcode刷题】18.反转链表——Java版
  51. 【leetcode刷题】17.相交链表——Java&python版
  52. 【leetcode刷题】16.环形链表——Java版
  53. 【leetcode刷题】15.汉明距离——Java版
  54. 【leetcode刷题】14.找到所有数组中消失的数字——Java版
  55. 【leetcode刷题】13.比特位计数——Java版
  56. oracle控制用户权限命令
  57. 三年Java开发,继阿里,鲁班二期Java架构师
  58. Oracle必须要启动的服务
  59. 万字长文!深入剖析HashMap,Java基础笔试题大全带答案
  60. 一问Kafka就心慌?我却凭着这份,图灵学院vip课程百度云