目录结构

后端工程

SOFAST框架采用模块化设计思想,将后端工程分为基础框架层(so-fast-framework)以及上游产品线层(目前仅提供Cloud产品线so-fast-pl-cloud)。

so-fast-framework

so-fast-framework是SOFAST框架的底层核心框架,提供微服务开发的基础脚手架以及依赖统一管理,其标准目录结构如下:

so-fast-framework
├── so-fast-cloud-dependencies              // 统一依赖管理
│
├── so-fast-common                          // 共通封装(统一常数、统一异常处理、统一返回
│
├── so-fast-core                            // SOFAST框架核心包
│   ├── so-fast-cache-starter               // 一级缓存管理
│   ├── so-fast-cloud-starter               // 注册中心、配置中心客户端starter
│   ├── so-fast-ds-starter                  // 动态数据源starter
│   ├── so-fast-elastic-starter             // ES搜索引擎starter
│   ├── so-fast-excel-starter               // excel文件操作starter
│   ├── so-fast-feign-starter               // RPC starter
│   ├── so-fast-kafka-starter               // kafka依赖封装starter
│   ├── so-fast-lock-starter                // 分布式锁封装starter
│   ├── so-fast-log-starter                 // 审计日志封装starter
│   ├── so-fast-mongo-starter               // mongodb依赖封装starter
│   ├── so-fast-mybatis-starter             // mybatis-plus封装starter
│   ├── so-fast-mybatis-tenant-starter      // mybatis-plus多租户版本封装starter
│   ├── so-fast-oss-starter                 // oss对象存储封装starter
│   ├── so-fast-pay                         // 聚合支付封装starter
│   ├── so-fast-rabbitmq-starter            // rabbit依赖封装starter
│   ├── so-fast-redis-starter               // redis封装starter
│   ├── so-fast-redis-tenant-starter        // redis多租户版本封装starter
│   ├── so-fast-rocketmq-starter            // rocketmq依赖封装starter
│   ├── so-fast-seata-starter               // seata依赖封装starter
│   ├── so-fast-security-starter            // oauth2封装starter
│   ├── so-fast-security-tenant-starter     // oauth2多租户版本封装starter
│   ├── so-fast-sentinel-gateway-starter    // 网关限流封装starter
│   ├── so-fast-sentinel-starter            // 微服务限流封装starter
│   ├── so-fast-swagger-starter             // swagger api封装starter
│   ├── so-fast-tenant-starter              // 多租户上下文封装starter
│   ├── so-fast-web-starter                 // 微服务web api开发starter
│   ├── so-fast-web-tenant-starter          // 微服务web api多租户版本开发starter
│   ├── so-fast-websocket-starter           // websocket封装starter
│   ├── so-fast-xss-starter                 // xss安全starter
│
├── so-fast-sdk                             // 平台层sdk
│   └── so-fast-log-sdk                     // 审计日志sdk
│
└── so-fast-utils                           // 工具类
    ├── sf-common-utils                     // 常用工具类(非web系)
    └── sf-web-utils                        // web用工具类

so-fast-framework只提供基础jar包,所有依赖包均发布在maven私服上,开发使用时只需要在maven中配置私服镜像即可拉取使用。

so-fast-pl-cloud

so-fast-pl-cloud是Cloud产品线的解决方案,提供企业级微服务框架。其标准目录如下:

so-fast-pl-cloud
├── db                                      // 数据库脚本
├── deploy                                  // 服务一键启停脚本
├── nacos                                   // nacos参考配置文件,可直接在nacos导入
│ 
├── so-fast-gateway                         // 网关服务
├── so-fast-pl-common                       // 产品级通用常数等
├── so-fast-pl-sdk                          // 产品级微服务sdk
│   ├── so-fast-cms-sdk                     // cms微服务sdk
│   ├── so-fast-system-sdk                  // system微服务sdk
│   ├── so-fast-uaa-sdk                     // uaa微服务sdk
│   └── so-fast-upms-sdk                    // upms微服务sdk
│
├── so-fast-platform                        // 产品线内置服务
│   ├── so-fast-cms                         // 内容管理服务
│   ├── so-fast-demo                        // demo示例服务
│   ├── so-fast-log                         // 审计日志服务
│   ├── so-fast-upms                        // UPMS服务
│   ├── so-fast-system                      // 系统设置服务
│   ├── so-fast-fs                          // 文件上传服务
│   └── so-fast-ws-server                   // websocket服务
├── so-fast-uaa                             // 统一认证中心
│ 
├── so-fast-visual                          // 可视化服务
│   ├── so-fast-deploy                      // 可视化部署(可忽略,目前使用jenkins)
│   ├── so-fast-admin                       // 监控中心
│   ├── so-fast-mpg                         // 代码生成器
│   ├── so-fast-task                        // 定时任务管理平台(集成xxl-job)

前端工程

前端工程采用vue-cli3.0构建,其标准目录结构如下:

sofast-web
├── babel.config.js                                // Babel配置文件
├── package-lock.json
├── package.json
├── postcss.config.js                              // PostCss配置文件
├── public
│   ├── favicon.ico
│   ├── index.html
│   └── static                                     // 静态文件目录
│       └── NEditor                                // 富文本编辑器(基于UEditor)
├── src
│   ├── App.vue
│   ├── api                                        // 配置后端接口
│   ├── assets                                     // 图片
│   ├── components                                 // 共通组件目录
│   │   ├── Breadcrumb                             // 面包屑导航
│   │   ├── DateRange                              // 日期区间组件
│   │   ├── Dialog                                 // 模态框组件
│   │   ├── DictSelect                             // 字典下拉选组件
│   │   ├── Editor                                 // 富文本编辑器组件
│   │   ├── Hamburger                              // 展开/收缩左侧菜单按钮组件
│   │   ├── HeaderSearch                           // 头部菜单检索组件
│   │   ├── IconSelect                             // 图标选择器组件
│   │   ├── LangSelect                             // 语言选择组件
│   │   ├── OrganizationSelect                     // 组织机构级联下拉组件
│   │   ├── Pagination                             // 分页组件
│   │   ├── RoleSelect                             // 角色下拉组件
│   │   ├── SvgIcon                                // SVG图标
│   │   ├── Table                                  // 表格组件
│   │   └── Upload                                 // 上传组件
│   ├── filters                                    // 自定义过滤器
│   ├── icons
│   │   └── svg                                    // 存放SVG图标
│   ├── i18n                                       // 国际化目录
│   │   └── common                                 // 共通Label,Message配置
│   ├── layout                                     // 全局布局
│   │   ├── components
│   │   │   ├── AppMain.vue                        // 中间内容区
│   │   │   ├── Navbar.vue                         // 头部Header
│   │   │   ├── Sidebar                            // 左侧菜单栏
│   │   │   ├── TagsView                           // 标签页
│   │   │   └── index.js
│   │   ├── index.vue
│   │   └── mixin
│   │       └── ResizeHandler.js                   // 响应式混入(区分desktop和mobile)
│   ├── main.js                                    // Vue入口文件
│   ├── mixins                                     // 自定义混入
│   ├── permission.js                              // 权限控制
│   ├── router                                     // 路由
│   ├── settings.js                                // 启用/停用部分组件
│   ├── store                                      // Vuex
│   ├── styles                                     // 样式文件
│   ├── themes                                     // 主题
│   │   └── default                                // 主题文件夹(默认)
│   ├── utils                                      // 工具
│   │   ├── auth.js                                // token工具
│   │   ├── base64Util.js                          // base64加密解密
│   │   ├── get-page-title.js                      // 获取页面title
│   │   ├── request.js                             // axios实例
│   │   ├── scroll-to.js                           // 滚动动画
│   │   ├── treeUtils.js                           // 树形数据工具(Array2Tree)
│   │   └── validate.js                            // 校验工具
│   └── views
│   │   ├── 404.vue                                // 404页面
│   │   ├── contentMgt                             // 内容管理模块
│   │   ├── dashboard                              // 首页
│   │   ├── login                                  // 登录页
│   │   ├── system                                 // 系统管理模块
│   │   │   ├── apiMgt                             // API管理
│   │   │   ├── dictionaryMgt                      // 字典管理
│   │   │   ├── log                                // 日志
│   │   │   ├── menuMgt                            // 菜单管理
│   │   │   ├── organizationMgt                    // 组织机构管理
│   │   │   ├── permissionMgt                      // 权限管理
│   │   │   ├── roleMgt                            // 角色管理
│   │   │   └── userMgt                            // 用户管理
│   │   └── userProfile                            // 个人中心
└── vue.config.js                                  // vue-cli3配置文件
└── .env.development                               // 开发环境变量配置
└── .env.staging                                   // 测试环境变量配置
└── .env.production                                // 生产环境变量配置
Copyright © 2020. 恩梯梯数据(中国)信息技术有限公司. all right reserved,powered by Gitbook该文件修订时间: 2021-08-11 17:21:44

results matching ""

    No results matching ""