小湖学院是一个 B2C模式 的职业技能在线教育系统,分为前台用户系统和后台运营平台。系统开发阶段使用了前后端分离架构,部署阶段使用了容器技术。

后端相关技术:

系统后端接口部分,使用目前市面上流行的 SpringBoot+SpringCloud 进行微服务架构,使用 Feign、Gateway、Hystrix ,以及阿里巴巴的 Nacos 等组件搭建了项目的基础环境。采用 MyBatis-Plus 进行持久层的操作,使用了 OAuth2+JWT 实现了分布式的访问。除此,项目中使用了阿里巴巴的 EasyExcel 实现对 Excel 的读写操作,使用了 Redis 进行首页数据的缓存,使用Git进行代码的版本控制,整合了 Swagger 生成接口文档。

college_parent                    // 后端项目
├── common                        // 通用代码层
│        └── common_util                // 工具类
│        └── service_base            // 业务通用代码
├── infrastructure                // 对外开放网关层
│        └── api_gateway                // gateway网关
├── service                        // 业务代码层
│        └── service_cms                // 前台内容api
│        └── service_edu                // 后台内容api
│        └── service_oss                // 阿里云oss文件存储
│        └── service_sms                // 阿里云短信分发
│        └── service_statistics        // 统计报表模块
│        └── service_trade            // 课程交易模块
│        └── service_ucenter            // 用户模块
│        └── service_vod                // 阿里云vod视频存储

前端相关技术:

系统前端部分,使用主流的前端框架 Vue,使用 Es6 的开发规范,采用模块化的开发模式,搭建页面环境使用了 Nuxt 框架和vue-admin-template 模板,使用 Element-ui 进行页面布局。前端环境中使用 Npm 进行依赖管理,使用 Babel 进行代码转换,使用 Webpack 进行静态资源的打包,采用 axios 进行 Ajax 请求调用,数据的图表展示使用了ECharts。

架构图

禁止盗图, 谢谢.

前台展示

后台展示

项目开源地址:

求个star

前端(前后台)

https://github.com/lexinhu/college_admin
https://github.com/lexinhu/college_site

后端

https://github.com/lexinhu/college_parent

本地启动运行

两个前端,分别 clone 后,执行命令

npm install
npm run dev

后端,安装完依赖后,除了修改基本的数据库连接信息,还要修改 application.yml 中的 aliyun 配置信息,然后根据需要选择启动模块。

前后端某些依赖随着时间版本推进可能出现不适用等的情况,请根据提示自行解决
阿里云VOD依赖不开源,VOD与OSS版本需兼容。

项目简单部署

Last modification:January 6th, 2021 at 07:50 pm
如果觉得我的文章对你有用,请随意赞赏