第一个前后端分离项目

第一次复刻一个前后端分离的javaweb项目,此项目是基于尚硅谷的谷粒学院,是一个B2C的系统,分为前台用户系统和后台管理系统

项目技术选型

  • 前端部分:使用主流的前端框架Vue,使用Es6的开发规范,采用模块化的开发模式。
  • 后端部分:SpringBoot + SpringCloud + MyBatis-Plus + HttpClient + MySQL + Maven+EasyExcel+ nginx
    1. 使用目前流行的SpringBoot+SpringCloud进行微服务架构,使用Feign、Gateway、Hystrix,以及阿里巴巴的Nacos等组件搭建了项目的基础环境。
    2. 采用mybatis-plus提高开发效率,使用代码生成器生成主框架,简化开发步骤。
    3. 使用swagger来测试接口
    4. 使用SpringSecurity整合项目登陆和权限管理,Redis进行数据缓存,将常用的数据存入 Redis,减少数据库访问量和并发量。
  • 其他中间件:Redis、阿里云OSS、阿里云视频点 业务中使用了ECharts做图表展示,使用EasyExcel完成分类批量添加、注册分布式单点登录使用了JWT。

项目具体内容

项目前后端分离开发,后端采用SpringCloud微服务架构,持久层用的是MyBatis-Plus,微服务分库设 计,使用Swagger生成接口文档,接入了阿里云视频点播、阿里云OSS。系统分为前台用户系统和后台管理系统两部分。
前台用户系统包括:首页、课程、名师、问答、文章。后台管理系统包括:讲师管理、课程分类管理、课程管理、统计分析、Banner管理、订单管理、权限管理等功能。

项目随笔

这是自从学习javaweb以来第一个跟着学做的前后端分离项目,之前零零散散的学各种技术栈一直处在非常割裂的状态,因为所学的知识都连不起来,这个项目让我了解了springboot的具体用法以及前后端分离项目具体是如何分离如何作用的。其实,对微服务也有一定的了解了,在开发的时候知道分模块开发,虽然远谈不上熟练,后面还会继续学习分布式微服务的知识。此次项目,收获颇多,编程水平也大幅提升。

Dare to dream, ready to achieve!