springboot在线课程管理系统

一、技术路线:

开发语言:Java

使用框架:spring boot

前端技术:JavaScript、VUE.js(2.X)、css3

数据库:MySQL 5.7

数据库管理工具:Navicat或sqlyog

开发工具:IDEA或Ecplise

二、项目介绍:
https://www.bilibili.com/video/BV1JF411r76w?t=16.4

三、运行截图:

系统实现

5.1管理员功能实现
5.1.1 通知公告管理
管理员进入如图5.1所示的通知公告管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成通知公告信息的修改,删除等操作。通知公告信息有通知公告名称,通知公告内容等信息[12]。


图5.1 通知公告管理界面

添加通知@RequestMapping("/save")
public R save(@RequestBody GonggaoEntity gonggao, HttpServletRequest request){
logger.debug("save方法:,,Controller:{},,gonggao:{}",this.getClass().getName(),gonggao.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
if(false)
return R.error(511,"永远不会进入");
Wrapper<GonggaoEntity> queryWrapper = new EntityWrapper<GonggaoEntity>()
.eq("gonggao_name", gonggao.getGonggaoName())
.eq("gonggao_types", gonggao.getGonggaoTypes())
;
logger.info("sql语句:"+
queryWrapper.getSqlSegment());
GonggaoEntity gonggaoEntity = gonggaoService.selectOne(queryWrapper);
if(gonggaoEntity==null){
gonggao.setInsertTime(new Date());
gonggao.setCreateTime(new Date());
gonggaoService.insert(gonggao);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}

5.1.2 教师管理
管理员进入如图5.2所示的教师管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成教师信息的修改,删除等操作。


图5.2 教师管理界面

教师删除@RequestMapping("/delete")
public R delete(@RequestBody Integer[] ids){
logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());

jiaoshiService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}

5.1.3 学生管理
管理员进入如图5.3所示的学生管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成学生信息的修改,删除等操作。学生的账号密码,管理员也能重置。


图5.3 学生管理界面

学生删除@RequestMapping("/delete")
public R delete(@RequestBody Integer[] ids){
logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());

xueshengService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}


5.2 教师功能实现
5.2.1 教学计划管理
教师进入如图5.4所示的教学计划管理界面之后,教师点击信息显示栏中最右侧的修改,删除按钮可依次完成教学计划信息的修改,删除等操作。教学计划信息包括教学计划文件,教学计划名称,教学计划编号等信息,教师可以添加教学计划。


图5.4 教学计划管理界面

添加教学计划@RequestMapping("/save")
public R save(@RequestBody JiaoxuejihuaEntity jiaoxuejihua, HttpServletRequest request){
logger.debug("save方法:,,Controller:{},,jiaoxuejihua:{}",this.getClass().getName(),jiaoxuejihua.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
if(false)
return R.error(511,"永远不会进入");
else if("教师".equals(role))
jiaoxuejihua.setJiaoshiId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
Wrapper<JiaoxuejihuaEntity> queryWrapper = new EntityWrapper<JiaoxuejihuaEntity>()
.eq("jiaoshi_id", jiaoxuejihua.getJiaoshiId())
.eq("kecheng_id", jiaoxuejihua.getKechengId())
.eq("jiaoxuejihua_uuid_number",
jiaoxuejihua.getJiaoxuejihuaUuidNumber())
.eq("jiaoxuejihua_name",
jiaoxuejihua.getJiaoxuejihuaName())
.eq("jiaoxuejihua_types",
jiaoxuejihua.getJiaoxuejihuaTypes())
;
logger.info("sql语句:"+
queryWrapper.getSqlSegment());
JiaoxuejihuaEntity jiaoxuejihuaEntity =
jiaoxuejihuaService.selectOne(queryWrapper);
if(jiaoxuejihuaEntity==null){

jiaoxuejihua.setInsertTime(new Date());

jiaoxuejihua.setCreateTime(new Date());

jiaoxuejihuaService.insert(jiaoxuejihua);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}

5.2.2 课程管理
教师进入如图5.5所示的课程管理界面之后,教师点击信息显示栏中最右侧的修改,删除,下架按钮可依次完成课程信息的修改,删除,下架等操作。课程信息包括课程热度,课程视频,课程编号,课程名称等信息。教师也能添加课程[13]。


图5.5 课程管理界面

添加课程@RequestMapping("/save")
public R save(@RequestBody KechengEntity kecheng, HttpServletRequest request){
logger.debug("save方法:,,Controller:{},,kecheng:{}",this.getClass().getName(),kecheng.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
if(false)
return R.error(511,"永远不会进入");
else if("教师".equals(role))
kecheng.setJiaoshiId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
Wrapper<KechengEntity> queryWrapper = new EntityWrapper<KechengEntity>()
.eq("jiaoshi_id", kecheng.getJiaoshiId())
.eq("kecheng_name", kecheng.getKechengName())
.eq("kecheng_uuid_number",
kecheng.getKechengUuidNumber())
.eq("kecheng_video", kecheng.getKechengVideo())
.eq("kecheng_types", kecheng.getKechengTypes())
.eq("kecheng_clicknum",
kecheng.getKechengClicknum())
.eq("shangxia_types", kecheng.getShangxiaTypes())
.eq("kecheng_delete", kecheng.getKechengDelete())
;
logger.info("sql语句:"+
queryWrapper.getSqlSegment());
KechengEntity kechengEntity = kechengService.selectOne(queryWrapper);
if(kechengEntity==null){

kecheng.setKechengClicknum(1);
kecheng.setShangxiaTypes(1);
kecheng.setKechengDelete(1);
kecheng.setCreateTime(new Date());
kechengService.insert(kecheng);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}

5.2.3 课程留言管理
教师进入如图5.6所示的课程留言管理界面之后,教师点击信息显示栏中最右侧的详情,回复按钮可依次完成课程留言信息的详情查看,留言回复等操作。


图5.6 课程留言管理界面

回复留言 @RequestMapping("/update")
public R update(@RequestBody KechengLiuyanEntity kechengLiuyan, HttpServletRequest request){
logger.debug("update方法:,,Controller:{},,kechengLiuyan:{}",this.getClass().getName(),kechengLiuyan.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
// if(false)
// return R.error(511,"永远不会进入");
// else if("学生".equals(role))
//
kechengLiuyan.setXueshengId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
//根据字段查询是否有相同数据
Wrapper<KechengLiuyanEntity> queryWrapper = new EntityWrapper<KechengLiuyanEntity>()
.eq("id",0)
;
logger.info("sql语句:"+
queryWrapper.getSqlSegment());
KechengLiuyanEntity kechengLiuyanEntity =
kechengLiuyanService.selectOne(queryWrapper);

kechengLiuyan.setUpdateTime(new Date());
if(kechengLiuyanEntity==null){

kechengLiuyanService.updateById(kechengLiuyan);//根据id更新
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}

5.3 学生功能实现
5.3.1 课程信息
学生进入如图5.7所示的课程信息界面之后,学生通过播放课程视频的方式学习课程知识,学生也能查看课程的知识要点,考试大纲等信息,还可以发布课程的留言信息。


图5-7 课程信息界面

5.3.2 通知公告
学生进入如图5.8所示的通知公告界面之后,学生根据通知公告类型筛选通知公告信息,学生可以查看通知公告的具体内容。


图5-8 通知公告界面

5.3.3 更改个人信息
学生进入如图5.9所示的更改个人信息界面之后,学生重新上传头像来替换现有的头像,以及对电子邮箱,手机号等产生变化的数据进行更改,更改了数据之后,需要学生点击更新信息按钮来保存更改的数据。


图5.9 更改个人信息界面

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

huida_kaifa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值