——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7、Node.js≥14
开发工具
后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可
❗没学过node.js的不要搞前后端分离项目
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明






基于javaweb的SpringBoot学习平台管理系统(java+springboot+vue+elementui+layui+mysql+maven)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| 管理员(users表): admin 123456
学生(xuesheng表): 学号1 123456 学号2 123456 学号3 123456 学号4 123456 学号5 123456 学号6 123456
教师(jiaoshi表): 工号1 123456 工号2 123456 工号3 123456 工号4 123456 工号5 123456 工号6 123456
|
项目介绍
基于SpringBoot和Vue的学习平台:
在平台首页可以查看首页,课程信息,作业信息,资料信息,校园论坛,试卷,公告信息,个人中心,后台管理等内容进行详细操作
角色:管理员、学生、教师
管理员:管理员登录系统后,可以对首页,个人中心,学生管理,教师管理,课程信息管理,类型管理,作业信息管理,资料信息管理,签到信息管理,成绩统计管理,学生作业管理,试卷管理,试题管理,校园论坛,系统管理等功能模块进行相应操作
学生:学习平台,在平台首页可以查看首页,课程信息,作业信息,资料信息,校园论坛,试卷,公告信息,个人中心,后台管理等内容进行详细操作
教师:教师登录进入学习平台,可以对首页,个人中心,课程信息管理,作业信息管理,资料信息管理,签到信息管理,成绩统计管理,学生作业管理等功能进行相应操作
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 4.数据库:MySql 5.7/8.0版本均可; 5.是否Maven项目:是;
技术栈
1.后端:SpringBoot+Mybaits 2.前端:Vue +ElementUI +Layui +HTML+CSS+JS
使用说明
项目运行: 1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,在浏览器中输入项目地址:http://localhost:8080/springbootm55rv/front/index.html 注:项目所在路径不能存在中文、空格等特殊字符 管理员: abo/abo 用户: 学号1/123456 教师:工号1/123456
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
@RequestMapping("/info/{id}") public R info(@PathVariable("id") Long id){ ChengjitongjiEntity chengjitongji = chengjitongjiService.selectById(id); return R.ok().put("data", chengjitongji); }
@IgnoreAuth @RequestMapping("/detail/{id}") public R detail(@PathVariable("id") Long id){ ChengjitongjiEntity chengjitongji = chengjitongjiService.selectById(id); return R.ok().put("data", chengjitongji); }
@RequestMapping("/save") public R save(@RequestBody ChengjitongjiEntity chengjitongji, HttpServletRequest request){ chengjitongji.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue()); chengjitongjiService.insert(chengjitongji); return R.ok(); }
@RequestMapping("/add") public R add(@RequestBody ChengjitongjiEntity chengjitongji, HttpServletRequest request){ chengjitongji.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue()); chengjitongjiService.insert(chengjitongji); return R.ok(); }
@RequestMapping("/update")
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
@RestController @RequestMapping("/forum") public class ForumController { @Autowired private ForumService forumService;
@RequestMapping("/page") public R page(@RequestParam Map<String, Object> params,ForumEntity forum, HttpServletRequest request){ if(!request.getSession().getAttribute("role").toString().equals("管理员")) { forum.setUserid((Long)request.getSession().getAttribute("userId")); } EntityWrapper<ForumEntity> ew = new EntityWrapper<ForumEntity>(); PageUtils page = forumService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, forum), params), params));
return R.ok().put("data", page); }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Calendar c = Calendar.getInstance(); Date remindStartDate = null; Date remindEndDate = null; if(map.get("remindstart")!=null) { Integer remindStart = Integer.parseInt(map.get("remindstart").toString()); c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart); remindStartDate = c.getTime(); map.put("remindstart", sdf.format(remindStartDate)); } if(map.get("remindend")!=null) { Integer remindEnd = Integer.parseInt(map.get("remindend").toString()); c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindEnd); remindEndDate = c.getTime(); map.put("remindend", sdf.format(remindEndDate)); } } Wrapper<ChengjitongjiEntity> wrapper = new EntityWrapper<ChengjitongjiEntity>(); if(map.get("remindstart")!=null) { wrapper.ge(columnName, map.get("remindstart")); } if(map.get("remindend")!=null) { wrapper.le(columnName, map.get("remindend")); }
String tableName = request.getSession().getAttribute("tableName").toString(); if(tableName.equals("xuesheng")) { wrapper.eq("xuehao", (String)request.getSession().getAttribute("username")); }
int count = chengjitongjiService.selectCount(wrapper); return R.ok().put("count", count); }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| public R page(@RequestParam Map<String, Object> params,JiaoshiEntity jiaoshi, HttpServletRequest request){ EntityWrapper<JiaoshiEntity> ew = new EntityWrapper<JiaoshiEntity>(); PageUtils page = jiaoshiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiaoshi), params), params));
return R.ok().put("data", page); }
@IgnoreAuth @RequestMapping("/list") public R list(@RequestParam Map<String, Object> params,JiaoshiEntity jiaoshi, HttpServletRequest request){ EntityWrapper<JiaoshiEntity> ew = new EntityWrapper<JiaoshiEntity>(); PageUtils page = jiaoshiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiaoshi), params), params)); return R.ok().put("data", page); }
@RequestMapping("/lists") public R list( JiaoshiEntity jiaoshi){ EntityWrapper<JiaoshiEntity> ew = new EntityWrapper<JiaoshiEntity>(); ew.allEq(MPUtil.allEQMapPre( jiaoshi, "jiaoshi")); return R.ok().put("data", jiaoshiService.selectListView(ew)); }
@RequestMapping("/query") public R query(JiaoshiEntity jiaoshi){ EntityWrapper< JiaoshiEntity> ew = new EntityWrapper< JiaoshiEntity>(); ew.allEq(MPUtil.allEQMapPre( jiaoshi, "jiaoshi")); JiaoshiView jiaoshiView = jiaoshiService.selectView(ew); return R.ok("查询教师成功").put("data", jiaoshiView); }
@RequestMapping("/info/{id}")
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| HttpServletRequest request){ EntityWrapper<ChengjitongjiEntity> ew = new EntityWrapper<ChengjitongjiEntity>(); PageUtils page = chengjitongjiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, chengjitongji), params), params)); return R.ok().put("data", page); }
@RequestMapping("/lists") public R list( ChengjitongjiEntity chengjitongji){ EntityWrapper<ChengjitongjiEntity> ew = new EntityWrapper<ChengjitongjiEntity>(); ew.allEq(MPUtil.allEQMapPre( chengjitongji, "chengjitongji")); return R.ok().put("data", chengjitongjiService.selectListView(ew)); }
@RequestMapping("/query") public R query(ChengjitongjiEntity chengjitongji){ EntityWrapper< ChengjitongjiEntity> ew = new EntityWrapper< ChengjitongjiEntity>(); ew.allEq(MPUtil.allEQMapPre( chengjitongji, "chengjitongji")); ChengjitongjiView chengjitongjiView = chengjitongjiService.selectView(ew); return R.ok("查询成绩统计成功").put("data", chengjitongjiView); }
@RequestMapping("/info/{id}") public R info(@PathVariable("id") Long id){ ChengjitongjiEntity chengjitongji = chengjitongjiService.selectById(id); return R.ok().put("data", chengjitongji); }
@IgnoreAuth @RequestMapping("/detail/{id}") public R detail(@PathVariable("id") Long id){ ChengjitongjiEntity chengjitongji = chengjitongjiService.selectById(id); return R.ok().put("data", chengjitongji); }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| }
int count = forumService.selectCount(wrapper); return R.ok().put("count", count); }
}
|
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=050023061907201aq
https://javayms.pages.dev?id=050023061907201aq