技术点总结
-
在线教育项目采用前后端分离开发,后端写接口,前端调用。
-
项目使用的前端技术
- vue
*基本语法
*相关指令:v-bind,单向绑定
v-model,双向绑定,
v-if,v-for,v-html
*生命周期 :created()页面渲染之前执行,mounted()页面渲染之后执行。 - Element-ui
- Nodejs:是JS的运行环境,不需要浏览器直接运行js代码,模拟服务器效果
- NPM:包管理工具(js依赖),类似于Maven(jar包依赖)
- Babel:转码器,把ES6的代码转换成ES5代码
- 前端模块化:一个JS引入另一个JS并调用方法
- 后台系统使用vue-admin-template,基于vue+Element-ui
- 前台系统使用Nuxt,基于vue,服务端渲染技术
- Echarts,图标工具。
- vue
-
项目使用的后端技术
-
微服务架构:
-
SpringBoot:
本质上是Spring,只是快速构建Spring工程的脚手架
细节:(1)启动类包扫描机制(从外往里),通过@ComponentScan扫描机制设置扫描规则。(2)配置类和启动类分开,配置类里写的是具体方法(MapperScan等)。(3)配置文件application.properties -
SpringCloud
(1)是很多框架的总称,使用这些框架能够实现微服务框架,基于SpringBoot实现。
(2)组成框架:
Nacos作为注册中心,将微服务在Nacos中注册实现调用。
Nacos作为配置中心,配置文件
Feign服务调用,一个微服务调用另一个微服务,远程调用。
熔断器:连接服务器超时调用熔断方法
gateway网关:
版本: -
MyBatisPlus
对MyBatis做了增强,自动填充,乐观锁,逻辑删除,代码生成器。 -
EasyExcel,效率高,在Apache poi基础上进行了封装,采用sax方式进行解析,一行一行解析,无形中提高了效率,不会存在内存溢出问题。
-
SpringSecurity
在项目整合框架实现权限管理功能
框架组成:认证和授权
登陆认证过程:
代码执行过程:
-
Redis
首页数据通过Redis缓存(首页面数据)
Redis数据类型:string,set,list,hash,sortset
什么样的数据适合使用Redis作为缓存:(不太重要,经常读取,少更改) -
Nginx
反向代理服务器
请求转发,负载均衡,动静分离 -
OAuth2+JWT
-
HttpClient
发送请求,返回响应的工具,不需要浏览器完成请求和响应。
应用场景:在微信获取扫码人信息时利用httpclient向微信的固定网址请求扫码人信息。微信支付查询支付状态。 -
Cookie
(1)Cookie特点:客户端技术。每次发送请求都会带着Cookie值进行发送。cookie有默认有效时长:关闭浏览器。 -
微信登陆
-
微信支付
-
阿里云OSS,视频点播
-
Git
-
Docker+jenkins
-