当前位置:   article > 正文

基于Java+Spring Boot+MySQL的学生选课系统的设计与实现(源码+数据库+文档)_选课系统设计java

选课系统设计java

目录

项目简介

技术详情

效果图

管理员功能实现

教师管理

学生管理

专业信息管理

教师功能实现

课程查询

学生选课管理

学生成绩管理

学生功能实现

课程信息管理

学生选课查询

学生成绩查询

文档内容展示

核心代码

其他案例

​编辑

源码获取


末尾获取源码
作者介绍:大厂全栈码农|毕设实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。

更多项目:CSDN主页曾几何时

我欲乘风归去 又恐琼楼玉宇  高处不胜寒 -苏轼


项目简介

互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对学生选课信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,采用学生选课系统可以有效管理,使信息管理能够更加科学和规范。

学生选课系统在Eclipse环境中,使用Java语言进行编码,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,其管理员管理专业,教师,学生,课程,查看学生选课以及学生成绩信息。教师查询学生,查询课程,审核学生选课信息,为学生学习的课程进行成绩打分。学生参与课程选课,查询选课信息,查询已选课程的成绩信息。

总之,学生选课系统集中管理信息,有着保密性强,效率高,存储空间大,成本低等诸多优点。它可以降低信息管理成本,实现信息管理计算机化。


技术详情

  1. 语言:Java
  2. 使用框架:Spring Boot
  3. 前端技术:JS、Vue 、css3
  4. 开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code
  5. 数据库:MySQL 5.7/8.0
  6. 数据库管理工具:phpstudy/Navicat
  7. JDK版本:jdk1.8
  8. Maven: apache-maven 3.8.1-bin
  9. 前端环境:Node.Js 12\14\16

效果图

管理员功能实现

教师管理

管理员进入指定功能操作区之后可以管理教师。其页面见下图。教师的资料需要管理员负责管理,包括修改,新增,删除等操作。

 

学生管理

管理员进入指定功能操作区之后可以管理学生信息。其页面见下图。学生是本系统的一个角色,其相关信息需要管理员添加,修改,删除等。

专业信息管理

管理员进入指定功能操作区之后可以管理专业信息。其页面见下图。管理员在本页面修改专业名称,删除指定的专业信息,管理员提交专业名称可以查询专业信息。

教师功能实现

课程查询

教师进入指定功能操作区之后可以查询课程。其页面见下图。课程信息是管理员负责增删改查,教师只需要查询课程,查看课程详情。

学生选课管理

教师进入指定功能操作区之后可以管理学生选课信息。其页面见下图。学生参与课程选课,教师负责审核,并在课程学习结束之后,为学生学习的课程进行打分。

 

学生成绩管理

教师进入指定功能操作区之后可以管理学生成绩信息。其页面见下图。教师修改学生成绩的分数等信息,可以删除学生成绩信息。

 

学生功能实现

课程信息管理

学生进入指定功能操作区之后可以管理课程信息。其页面见下图。学生查看课程的学分,开课时间与结束时间,课程名称等信息,学生点击课程信息右侧的学生选课按钮,可以选择该课程。

 

学生选课查询

学生进入指定功能操作区之后可以查询学生选课信息。其页面见下图。学生提供教师姓名,或者是提供课程名称可以查询学生选择的课程信息,查询出来的选课信息可以显示学生已选的课程的审核情况。

 

学生成绩查询

学生进入指定功能操作区之后可以查询学生成绩。其页面见下图。学生查询已选课程的成绩信息,查看成绩详情,包括分数,是否合格,教师姓名等信息。

 

文档内容展示


核心代码

  1. @RequestMapping("users")
  2. @RestController
  3. public class UserController{
  4. @Autowired
  5. private UserService userService;
  6. @Autowired
  7. private TokenService tokenService;
  8. /**
  9. * 登录
  10. */
  11. @IgnoreAuth
  12. @PostMapping(value = "/login")
  13. public R login(String username, String password, String captcha, HttpServletRequest request) {
  14. UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
  15. if(user==null || !user.getPassword().equals(password)) {
  16. return R.error("账号或密码不正确");
  17. }
  18. String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
  19. return R.ok().put("token", token);
  20. }
  21. /**
  22. * 注册
  23. */
  24. @IgnoreAuth
  25. @PostMapping(value = "/register")
  26. public R register(@RequestBody UserEntity user){
  27. // ValidatorUtils.validateEntity(user);
  28. if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
  29. return R.error("用户已存在");
  30. }
  31. userService.insert(user);
  32. return R.ok();
  33. }
  34. /**
  35. * 退出
  36. */
  37. @GetMapping(value = "logout")
  38. public R logout(HttpServletRequest request) {
  39. request.getSession().invalidate();
  40. return R.ok("退出成功");
  41. }
  42. /**
  43. * 密码重置
  44. */
  45. @IgnoreAuth
  46. @RequestMapping(value = "/resetPass")
  47. public R resetPass(String username, HttpServletRequest request){
  48. UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
  49. if(user==null) {
  50. return R.error("账号不存在");
  51. }
  52. user.setPassword("123456");
  53. userService.update(user,null);
  54. return R.ok("密码已重置为:123456");
  55. }
  56. /**
  57. * 列表
  58. */
  59. @RequestMapping("/list")
  60. public R list( UserEntity user){
  61. EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
  62. ew.allEq(MPUtil.allEQMapPre( user, "user"));
  63. return R.ok().put("data", userService.selectListView(ew));
  64. }
  65. /**
  66. * 保存
  67. */
  68. @PostMapping("/save")
  69. public R save(@RequestBody UserEntity user){
  70. // ValidatorUtils.validateEntity(user);
  71. if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
  72. return R.error("用户已存在");
  73. }
  74. userService.insert(user);
  75. return R.ok();
  76. }
  77. /**
  78. * 修改
  79. */
  80. @RequestMapping("/update")
  81. public R update(@RequestBody UserEntity user){
  82. // ValidatorUtils.validateEntity(user);
  83. userService.updateById(user);//全部更新
  84. return R.ok();
  85. }
  86. /**
  87. * 删除
  88. */
  89. @RequestMapping("/delete")
  90. public R delete(@RequestBody Long[] ids){
  91. userService.deleteBatchIds(Arrays.asList(ids));
  92. return R.ok();
  93. }
  94. }

其他案例

源码获取

 大家点赞、收藏、关注、评论啦 、

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/615654
推荐阅读
相关标签