# Art
**Repository Path**: wzl1988java/art
## Basic Information
- **Project Name**: Art
- **Description**: 🎉基于Spring Boot 2.7.x、 Spring Cloud & Alibaba、 OAuth2 的微服务RBAC 动态权限、SaaS多租户系统。✨✨点个star ➕关注更新。 🍺🍺欢迎加入交流群。
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: https://fxzcloud.gitee.io/docs/
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 160
- **Created**: 2023-03-08
- **Last Updated**: 2023-03-08
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README

## 🚀项目介绍
[](https://gitee.com/fxz-cloud/art/blob/master/LICENSE)
[](https://gitee.com/fxz-cloud/art/stargazers)
[](https://gitee.com/fxz-cloud/art/members)
Art 是 FCloud 项目中的一员。Art 全端代码开源,支持RBAC 动态权限、SaaS多租户系统。
## 🪜项目结构
```lua
art
├── art-api -- 接口管理
├── art-auth -- 认证服务器
├── art-framework -- 通用工具封装
├── art-spring-boot-starter-canal -- 针对canal封装
├── art-spring-boot-starter-captcha -- 验证码封装
├── art-spring-boot-starter-core -- web基础配置
├── art-spring-boot-starter-data-permission -- 数据权限封装
├── art-spring-boot-starter-database -- 多数据源
├── art-spring-boot-starter-dependencies -- 依赖管理
├── art-spring-boot-starter-doc -- 接口文档
├── art-spring-boot-starter-es -- es配置
├── art-spring-boot-starter-feign -- feign拓展
├── art-spring-boot-starter-file -- 文件管理模块
├── art-spring-boot-starter-gateway -- 动态网关
├── art-spring-boot-starter-idempotency -- 幂等控制组件
├── art-spring-boot-starter-jackson -- Json序列化配置
├── art-spring-boot-starter-log -- 日志配置
├── art-spring-boot-starter-mp -- mybatis-plus配置
├── art-spring-boot-starter-rabbit -- rabbitMq消息队列
├── art-spring-boot-starter-quartz -- quartz定时任务
├── art-spring-boot-starter-redis -- 缓存、mq、key事件等封装
├── art-spring-boot-starter-redisson -- redisson分布式锁相关模块
├── art-spring-boot-starter-seata -- 分布式事务
├── art-spring-boot-starter-security -- 安全模块
├── art-spring-boot-starter-sensitive -- 数据脱敏
├── art-spring-boot-starter-sequence -- 发号器(序列号生成器)
├── art-spring-boot-starter-sms -- 阿里云短信服务
├── art-spring-boot-starter-tenant -- SaaS多租户支持
├── art-spring-boot-starter-websocket -- websocket
├── art-spring-boot-starter-xss -- xss过滤
├── art-spring-boot-starter-xxl-job -- xxl-job配置
├── art-gateway -- 网关模块
├── art-server -- 系统服务
├── art-server-system -- 系统管理模块
├── art-server-generate -- 代码生成器模块
├── art-server-scheduled -- quartz定时任务模块
├── art-server-z-demos -- 实验性模块
├──_other -- 项目相关文件
├── db -- 数据库相关文件
├── docker -- docker环境
├── es -- es索引信息
├── ui -- 前端代码
├── admin-vue2 -- 管理员界面
├── mall-uni -- 商城小程序界面
```
## 📖分层结构
项目中使用的是阿里的规范(详细可看https://github.com/alibaba/p3c 这里面的[Java开发手册(黄山版).pdf](https://github.com/alibaba/p3c/blob/master/Java%E5%BC%80%E5%8F%91%E6%89%8B%E5%86%8C(%E9%BB%84%E5%B1%B1%E7%89%88).pdf)),同时使用插件进行规约扫描
我们先来看下规范当中的目录结构

- 开放 API 层:可直接封装 Service 接口暴露成 RPC 接口;通过 Web 封装成 http 接口;网关控制层等。
- 终端显示层:各个端的模板渲染并执行显示的层。
- Web 层:主要是对访问控制进行转发,各类基本参数校验,或者不复用的业务简单处理等。
- Service 层:相对具体的业务逻辑服务层。
- Manager 层:通用业务处理层,它有如下特征:
- 1) 对第三方平台封装的层,预处理返回结果及转化异常信息,适配上层接口。
- 2) 对 Service 层通用能力的下沉,如缓存方案、中间件通用处理。
- 3) 与 DAO 层交互,对多个 DAO 的组合复用。
- DAO 层:数据访问层,与底层 MySQL、Oracle、Hbase、OB 等进行数据交互。
- 第三方服务:包括其它部门 RPC 服务接口,基础平台,其它公司的 HTTP 接口,如淘宝开放平台、支 付宝付款服务、高德地图服务等。
- 外部数据接口:外部(应用)数据存储服务提供的接口,多见于数据迁移场景中。
## 💻系统应用
| RBAC&数据权限 |  |  |
| --------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| 多租户 |  |  |
| 动态网关&字典管理 |  |  |
| 动态数据源&代码生成, |  |  |
| 支持多种登录方式,可自定义进行拓展 |  |  |
| 强退用户&审计日志 |  |  |
## 🎁商城应用
| 秒杀活动 |  |  |
| ----------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| 优惠券活动 |  |  |
| 商品检索 |  |  |
| 订单管理&会员管理 |  |  |
## 📱移动端展示
| 支持多种登录方式 |  |  |
| ---------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| 商品详情 |  |  |
| 购物车 |  |  |
## 🔍项目说明
脚手架与商城为两个单独项目,功能可按需引入。如仅需脚手架功能,可轻松去除。
低耦合,秒上手,稳得很!
## ❓其他功能
过于先进,不便展示。欢迎下载源码研究🧐欢迎star
## 🍓依赖版本
| 依赖 | 版本 |
|----------------------|------------|
| Spring Boot | 2.7.9 |
| Spring Cloud | 2021.0.6 |
| Spring Cloud Alibaba | 2021.0.4.0 |
| Mybatis Plus | 3.5.3.1 |
| Hutool | 5.8.11 |
## 🍺加入我们
| 交流群 |  |  |
| ----------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| 二维码过期可加本人微信: |  | |
## 🍬说明文档
[🍓🍓🍓配套文档 fxzcloud.gitee.io/docs](https://fxzcloud.gitee.io/docs/)
## 🤝鸣谢
感谢 [](https://www.jetbrains.com/)提供的免费License