![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
在线教育项目
文章平均质量分 70
小码哥呀
这个作者很懒,什么都没留下…
展开
-
本项目使用的注解
1、@JsonFormat@JsonFormat:用于从数据库获取时间字段的值,并在前台按照正确的格式展示。2、@DataTimeFormat@DataTimeFormat:用于接收用户在前台输入的日期格式的属性值,比如注册新用户需要填入出生日期等。可以使后台按照设置的格式接收用户输入的数据。3、@TableField@TableField:该注解用于标识非主键的字段。将数据库列与 JavaBean 中的属性进行映射。4、 @TableLogic@TableLogic:在字段上加上这个注原创 2022-01-11 17:32:36 · 601 阅读 · 0 评论 -
微信登录功能
微信登录功能1、微信登录介绍1.1、前期准备1.2、授权流程2、服务器端(后端)开发2.1、返回微信登录参数2.1.1、添加配置2.1.2、添加配置类2.1.3、添加接口2.1.4、微信二维码调用网关配置2.2、前端显示登录二维码2.2.1、封装api请求2.2.2、修改组件2.3、处理微信回调2.3.1、引入依赖2.3.2、添加httpclient工具类2.3.2、添加回调接口获取access_token1、微信登录介绍1.1、前期准备1、注册微信开放平台:https://open.weixin.原创 2022-01-11 17:31:07 · 2128 阅读 · 1 评论 -
Day02-Swagger使用案例
Swagger使用案例1、配置Swagger21.1、编写swagger配置类6.2、引入依赖6.3、添加注解6.4、浏览器地址栏访问:http://localhost:8001/swagger-ui.html6.5、定义接口说明和参数说明1、配置Swagger2swagger作用:生成一个在线的文档,在这个文档里可以方便接口的测试。1.1、编写swagger配置类package com.nonglin.baseservice;import com.google.common.base.P原创 2021-03-30 17:36:29 · 156 阅读 · 0 评论 -
Day13-登录前端整合-p195
登录前端整合1、在api文件夹中创建登录的js文件,定义接口2、在pages文件夹中创建登录页面,调用方法(1)安装js-cookie插件(2)login.vue3、在request.js添加拦截器,用于传递token信息4、修改layouts中的default.vue页面(1)显示登录之后的用户信息(2)default.vue页面显示登录之后的用户信息1、在api文件夹中创建登录的js文件,定义接口login.jsimport request from '@/utils/request'exp原创 2021-03-27 16:43:06 · 95 阅读 · 0 评论 -
Day12-注册登录前端整合-p191、192、193
一、在nuxt环境中安装插件1、安装element-ui 和 vue-qriously(1)执行命令安装npm install element-uinpm install vue-qriously2、修改配置文件 nuxt-swiper-plugin.js,使用插件nuxt-swiper-plugin.jsimport Vue from 'vue'import VueAwesomeSwiper from 'vue-awesome-swiper/dist/ssr'import VueQ原创 2021-03-27 16:42:59 · 106 阅读 · 0 评论 -
Day12-项目中整合用户注册功能-p189
1、创建实体类,封装注册数据,包含验证码属性package com.nonglin.educenter.entity.vo;import io.swagger.annotations.ApiModel;import io.swagger.annotations.ApiModelProperty;import lombok.Data;/** * @Description : * @Author :lenovo * @Date :2021/3/26 19:33 */@Data@Api原创 2021-03-26 20:33:40 · 96 阅读 · 0 评论 -
Day12-项目中整合阿里云短信服务-p182
1、开通阿里云短信服务开通阿里云短信服务教程:https://blog.csdn.net/qq_46112274/article/details/1152481932、编写发送短信接口2.1、在service-msm的pom中引入依赖原创 2021-03-26 17:35:25 · 133 阅读 · 0 评论 -
Day12-阿里云短信服务-p183
阿里云短信服务1、首先登录阿里云账号开通短信服务2、模板管理3、签名管理1、首先登录阿里云账号开通短信服务进入阿里云主页面,搜索短信服务进入短信服务页面,点击产品详情页首次使用短信服务需要开题,点击免费开通点击立即开通,然后进入短信服务管理控制台界面点击国内服务,依次进行签名管理和模板管理。2、模板管理点击模板管理,添加模板点击提交,等待审核3、签名管理...原创 2021-03-26 16:17:43 · 93 阅读 · 0 评论 -
Day12-登录业务介绍
登录业务介绍1、单一服务器模式1.1、单一服务器模式简介1.2、单一服务器模式 登录2、SSO(single sign on)模式,即单点登录2.1、单点登录简介2.2、单点登录案例介绍3、单点登录的三种实现方式3.1、session广播机制实现3.2、使用cookie+redis实现3.3、使用token实现3.4、Token模式业务流程图1、单一服务器模式1.1、单一服务器模式简介早期单一服务器,用户认证。早期使用单一服务器模式,即用户登录和增删改查数据等业务全部放到一台服务器上处理。缺点原创 2021-03-26 09:58:12 · 164 阅读 · 0 评论 -
Day11-首页数据显示-Banner显示(前端)-p172
1、前端准备工作使用命令,下载axios依赖# 命令npm install axios2、封装axios创建utils文件夹,utils下创建request.js文件import axios from 'axios'// 创建axios实例const service = axios.create({ baseURL: 'http://localhost:9001', // api的base_url timeout: 20000 // 请求超时时间})export defau原创 2021-03-25 18:40:45 · 248 阅读 · 0 评论 -
Day11-首页数据显示-banner信息显示之环境搭建-p170
首页数据显示-banner信息显示之环境搭建一、新建banner微服务1、在service模块下创建子模块service-cms2、使用代码生成器生成banner代码(1)在数据库中创建cms_banner表(2)生成代码3、配置application.properties4、创建启动类一、新建banner微服务1、在service模块下创建子模块service-cms2、使用代码生成器生成banner代码(1)在数据库中创建cms_banner表CREATE TABLE `crm_bann原创 2021-03-25 14:48:46 · 192 阅读 · 0 评论 -
Day11-NUXT介绍及环境初始化-p166
NUXT介绍及环境初始化一、服务端渲染技术NUXT1、什么是服务端渲染2、什么是NUXT二、NUXT环境初始化1、下载压缩包2、解压下载的压缩包,得到如下文件夹3、打开解压后的文件夹,复制template文件夹下所有内容4、打开vscode工作区,新建文件夹vue-front-1010(名字可以自定义),将上一步复制的内容粘贴到该文件夹下。5、打开并运行vscode,进行如下操作,在终端中打开文件,执行命令以下载依赖。6、vscode控制台出现以下警告7、打开package.json文件,修改以下内容8、打原创 2021-03-24 21:40:47 · 249 阅读 · 0 评论 -
Day10-feign结合Hystrix使用-p163、p164
在项目中使用Hystrixfeign结合Hystrix使用,改造service-edu模块1、在service的pom中添加依赖2、在配置文件中添加hystrix配置3、在service-edu的client包里面创建熔断器的实现类4、修改VodClient接口的注解5、测试熔断器效果feign结合Hystrix使用,改造service-edu模块1、在service的pom中添加依赖<!--hystrix依赖,主要是用 @HystrixCommand --> <原创 2021-03-24 17:50:14 · 88 阅读 · 0 评论 -
Day10-服务调用-删除课程的同时删除所有小节视频-p158、p159
需求:删除课程的同时删除云端视频一个课程有很多章节,一个章节有很多小节,每个小节都有视频,删除课程的时候,删除视频有多个,怎么实现删除课程的同时删除阿里云端所有小节。1、在service-vod中创建接口。用于删除多个视频controller //删除多个阿里云端视频 @DeleteMapping("delete-batch") public R deleteBatch(@RequestParam("videoIdList") List videoIdList){原创 2021-03-24 16:56:27 · 272 阅读 · 0 评论 -
Day10-服务调用-Feign-删除小节的同时删除云端视频-p156
删除小节的同时删除云端视频一、Feign1、基本概念二、 实现服务调用1、需求2、在service模块添加pom依赖3、在调用端的启动类添加注解4、创建包和接口5、调用微服务。通过代码删除阿里云上的视频一、Feign1、基本概念Feign是Netflix开发的声明式、模板化的HTTP客户端, Feign可以帮助我们更快捷、优雅地调用HTTP API。Feign支持多种注解,例如Feign自带的注解或者JAX-RS注解等。Spring Cloud对Feign进行了增强,使Feign支持了Sprin原创 2021-03-24 15:38:23 · 149 阅读 · 0 评论 -
Day10-服务注册-Nacos概念及使用-p154
Nacos概念及使用1、Nacos基本概念2、常见的注册中心3、Nacos是以服务为主要服务对象的中间件,Nacos支持所有主流的服务发现、配置和管理。4、Nacos结构图5、Nacos流程6、Nacos下载和安装6.1、下载地址和版本6.2、启动nacos服务6.2.1、Linux/Unix/Mac操作系统6.2.2、Windows操作系统7、服务注册(service_edu为例)7.1、在service模块配置pom7.2、添加服务配置信息7.3、添加Nacos客户端注解7.4、启动客户端微服务1、N原创 2021-03-24 14:53:13 · 220 阅读 · 0 评论 -
Day10-删除阿里云云端视频-p152
删除阿里云云端视频一、后端1、controller中编写删除云端视频的方法二、前端1、定义api2、组件方法阿里云官方文档:服务端SDK->Java SDK->媒资管理https://help.aliyun.com/document_detail/61065.html?spm=a2c4g.11186623.6.831.654b3815cIxvma#h2–div-id-deletevideo-div-7一、后端1、controller中编写删除云端视频的方法 //根据视频id删除阿里云原创 2021-03-24 11:37:26 · 662 阅读 · 0 评论 -
Day09-课程管理-添加小节上传视频-p145、p146
课程管理-添加小节上传视频1、引入依赖2、创建application.properties配置文件3、创建启动类4、创建controller,service实现上传小节功能4.1、controller代码4.2、service代码5、工具类6、使用swagger测试接口1、引入依赖<dependencies> <dependency> <groupId>com.aliyun</groupId> <artifac原创 2021-03-23 20:45:17 · 166 阅读 · 0 评论 -
Day09-阿里云视频点播-视频上传p144、p143
阿里云视频点播-视频上传1、阿里云上传视频案例官方文档:2、引入上传视频的阿里云依赖2.1、引入依赖方法一:直接复制jar包2.1、引入依赖方法二:使用maven命令进行安装3、编写上传代码3.1、引入依赖:3.2、编写方法,实现上传测试:1、阿里云上传视频案例官方文档:https://help.aliyun.com/document_detail/53406.html?spm=a2c4g.11186623.6.1032.501243deyPRgq82、引入上传视频的阿里云依赖使用阿里云方式上传视原创 2021-03-23 19:53:26 · 342 阅读 · 0 评论 -
Day09-根据视频id获取视频url、视频凭证-p141、142
上传视频到阿里云视频点播服务1、在service创建子模块service_vod引入相关依赖 <dependencies> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> </dependency>原创 2021-03-23 17:56:57 · 840 阅读 · 0 评论 -
Day09-阿里云视频点播文档-p140
阿里云视频点播服务端SDK文档:https://help.aliyun.com/document_detail/57756.html?spm=a2c4g.11186623.6.1039.51c45cce2RVeR91、服务端:后端接口客户端:浏览器、安卓、ios2、API:阿里云提供固定的地址,只需要调用这个固定的地址,向地址传递参数,实现功能SDK:sdk对api方式进行封装,更方便使用,之前使用的EasyExcel调用阿里云提供类或者接口里面的方法实现视频功能...原创 2021-03-23 17:55:18 · 218 阅读 · 0 评论 -
springBoot项目创建新的模块后配置文件没有变成小绿叶
在父工程下创建了一个模块service_test,发现配置文件无效,没有变成小绿叶。打开pom.xml文件后发现组织名错了,新建的模块放在了service下,但pom.xml文件中的组织名为parent只需要将改成service即可。如下所示,改后配置文件自动变成了小绿叶。...原创 2021-03-23 17:21:44 · 1634 阅读 · 1 评论 -
Day09-开通阿里云视频点播-p138
参考文章:https://blog.csdn.net/qq_33857573/article/details/795642551、登录阿里云账号,在主页搜索栏搜索视频点播2、点击管理控制台:3、首次使用需要开通,点击开通服务:4、建议选择按流量收费:5、开通成功,点击管理控制台6、进入控制台页面...原创 2021-03-23 16:11:57 · 103 阅读 · 0 评论 -
异常:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
Maven加载机制出现异常异常信息如下:问题分析:解决方案1、直接将xml复制到target文件夹下对应的位置中解决方案2、在service的pom中配置如下节点解决方案3、在Spring Boot配置文件中添加配置异常信息如下:AbstractHandlerExceptionResolver.java:194 |org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver |Resolve原创 2021-03-23 08:43:53 · 229 阅读 · 0 评论 -
Day08-课程管理-课程大纲列表-p116、117
1、创建用于封装课程章节,每个课程章节下小节的实体类课程章节封装实体类:package com.nonglin.eduservice.entity.chapter;import lombok.Data;/** * @Description : 章节实体类 * @Author :lenovo * @Date :2021/3/10 20:53 */@Datapublic class ChapterVo { private String id; private String原创 2021-03-22 12:19:11 · 148 阅读 · 0 评论 -
Day08-整合富文本编辑器-p115
整合富文本编辑器-p115一、Tinymce可视化编辑器二、在项目中整合文本编辑器2.1、下载组件2.2、在项目中的build/webpack.dev.conf.js文件中添加配置2.3、引入js脚本三、在页面中使用文本编辑器组件3.1、在需要使用富文本编辑器的页面引入组件,声明组件。3.2、在页面中使用标签实现文本编辑器组件3.3、给组件添加样式四、测试一、Tinymce可视化编辑器参考:https://panjiachen.gitee.io/vue-element-admin/#/componen原创 2021-03-10 20:49:42 · 304 阅读 · 0 评论 -
Day07-课程信息管理(4)--课程封面图片上传-p113
上一节:添加课程信息(3)–课程分类多级联动课程信息管理(4)--课程封面图片上传1、需求2、上传封面前端组件3、定义方法参考 http://element-cn.eleme.io/#/zh-CN/component/upload 用户头像上传1、需求在课程添加表单中的课程封面处,点击默认头像,选择本地新的课程头像,进行上传。2、上传封面前端组件<!-- 课程封面 TODO --><!-- 课程封面--><el-form-item label="课程封面"&原创 2021-03-09 21:41:45 · 364 阅读 · 0 评论 -
Day07-添加课程信息(3)--课程分类多级联动-p112
上一节:添加课程信息(2)–实现讲师下拉列表添加课程信息(3)--课程分类多级联动1、需求2、获取一级分类2.1、组件数据定义2.2、组件模板2.3、组件脚本2.4、定义方法3、级联显示耳机分类3.1、组件模板3.2、注册change事件3.3、定义change事件方法1、需求2、获取一级分类2.1、组件数据定义定义在data中data(){ return { saveBtnDisabled:false, courseInfo:{原创 2021-03-09 21:01:02 · 228 阅读 · 0 评论 -
Day07-添加课程信息前端部分(2)--实现讲师下拉列表--p111
1、需求2、定义组件模板,实现上述需求代码: <!-- 课程讲师 TODO --> <!-- 所属分类:级联下拉列表 --> <!-- 一级分类 --> <!-- key:唯一标识 label:显示的名称 value:实际传递的值 --> <el-form-item label="课程讲师"> <el-原创 2021-03-09 15:31:43 · 254 阅读 · 0 评论 -
Day07-添加课程信息前端部分(1)---p109、110
添加课程信息前端1、添加路由2、添加组件---新建前端页面2.1、完善前端info.vue(课程信息页面)2.2.1、前端代码:2.1.2、js代码2.2、完善前端chapter.vue(完善大纲信息页面)2.2.1、前端代码:2.2.2、js代码2.3、完善前端publish.vue(课程发布页面)2.3.1、前端代码:2.3.2、js代码3、添加api接口course.js,在前端页面中调用后端接口3.1、定义course.js 接口中的代码3.2、完善前端info.vue的页面:3.2.1、完善表单:原创 2021-03-09 14:47:57 · 486 阅读 · 0 评论 -
Day07-添加课程信息接口-p108
1、数据库设计1.1、添加课程信息所用的表及表之间的关系1.2、数据库文件:链接:https://pan.baidu.com/s/1Q72hP6aCHvAS25flkvqUuQ提取码:daqk复制这段内容后打开百度网盘手机App,操作更方便哦2、使用代码生成器生成接口代码代码生成器package com.nonglin.demo;import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatis原创 2021-03-09 12:07:25 · 362 阅读 · 0 评论 -
Day07-课程分类管理-课程分类显示前端-p104
课程分类显示前端1、创建API2、将api导入前端页面3、完善list.vue中的方法4、前端功能优化5、测试1、创建APIimport request from '@/utils/request'export default { //1 课程分类列表 getSubjectList(){ return request({ url:`/eduservice/subject/getAllSubject`, method:'原创 2021-03-08 20:01:21 · 242 阅读 · 0 评论 -
Day07-课程分类管理-课程分类显示接口实现-p101、102、103
课程分类管理-课程分类显示接口实现1、前端页面树形结构如下所示2、如何返回以上格式的数据2.1、针对返回数据创建实体类。两个实体类,一级分类和二级分类2.2、在两个实体类之间表示关系(一个一级分类有多个二级分类)3、编写具体的封装代码4、测试1、前端页面树形结构如下所示我使用的是element-ui前端组件,前端树形结构如下所示:我们需要做的是:根据前端页面,创建后端接口,把课程分类按照前端要求的格式返回出去就可以了。2、如何返回以上格式的数据2.1、针对返回数据创建实体类。两个实体类,一级分原创 2021-03-08 19:21:06 · 328 阅读 · 0 评论 -
Day07-添加课程分类前端实现-p100
添加课程分类前端实现1、添加课程分类管理路由2、创建课程分类管理的前端页面3、添加课程分类前端页面3.1、表单代码3.2、js定义数据代码3.3、js定义上传方法代码3.4、回调函数代码4、测试1、添加课程分类管理路由{ path: '/subject', component: Layout, redirect: '/subject/table', name: '课程分类管理', meta: { title: '课程分类管理', icon: 'example'原创 2021-03-08 16:46:31 · 244 阅读 · 0 评论 -
Day06-使用Excel导入课程分类信息后端-p97、98
在excel中创建了课程分类信息的数据一、添加依赖1、在service-edu模块pom.xml配置文件中引入依赖由于父模块已经引入了其他依赖,所以此处只引入easyexcel的依赖读取excel文件所需全部依赖:在这里插入代码片...原创 2021-03-08 13:29:32 · 497 阅读 · 0 评论 -
Day06-Esayexcel简介及写、读操作-p95、96
Esayexcel简介及写、读操作1、Excel导入导出的应用场景2、Esayexcel简介3、Esayexcel特点4、实现EasyExcel对Excel写操作4.1、创建一个普通的maven项目4.2、在pom.xml中引入依赖4.3、创建实体类,和excel数据对应4.4、实现excel写操作4.5、测试。运行 4.4中TestEasyExcel类5、实现EasyExcel对Excel读操作5.1、创建一个普通的maven项目5.2、在pom.xml中引入依赖5.3、创建实体类,和excel数据对应5原创 2021-03-07 21:42:26 · 841 阅读 · 0 评论 -
Day06-讲师头像上传前端-p93
讲师头像上传前端1、将头像上传前端组件源码复制到项目中2、前端添加文件上传组件2.1、前端表单代码2.2、引入组件模块3、使用组件4、修改上传接口地址5、编写close方法和上传成功的方法6、测试使用element-ui组件实现1、将头像上传前端组件源码复制到项目中组件:组件链接:https://pan.baidu.com/s/13I8rJkGF_bt7w_f3kwPZkQ提取码:6wx8将组件放到项目src/components下:2、前端添加文件上传组件2.1、前端表单代码 &原创 2021-03-07 19:40:58 · 158 阅读 · 0 评论 -
Day06-配置nginx实现项目请求转发-p92
1、找到nginx配置文件nginx.conf2、在nginx.conf进行配置修改配置文件,将监听端口改成81。以下server下大括号那段代码需要在nginx配置文件nginx.conf中的http目录下配置http目录:nginx配置文件nginx.conf中的http目录如下,在配置文件第17行。3、修改前端请求地址改为nginx地址4、启动前端5、启动后端代码6、启动nginx注意:如果nginx重新启动,需要先把nginx停止,再重新启动停止nginx命令:原创 2021-03-07 12:50:50 · 98 阅读 · 0 评论 -
Day06-Nginx-p91
1、简介Nginx(“engine x”)是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。在高连接并发的情况下,Nginx是Apache服务器不错的替代品。Linux操作系统菜鸟教程:https://www.runoob.com/linux/linux-tutorial.htmlLinux操作系统下Nginx菜鸟教程:https://www.runoob.com/linux/nginx-install-s原创 2021-03-07 12:00:40 · 86 阅读 · 0 评论 -
Day06-讲师头像上传后端代码
1、创建常量类,读取配置文件内容创建常量读取工具类:ConstantPropertiesUtil.java使用@Value读取application.properties里的配置内容用spring的 InitializingBean 的 afterPropertiesSet 来初始化配置信息,这个方法将在所有的属性被初始化后调用。package com.nonglin.oss.utils;import org.springframework.beans.factory.InitializingB原创 2021-03-06 21:05:25 · 127 阅读 · 0 评论