admin 管理员组

文章数量: 1184232


2024年3月12日发(作者:treed)

第37卷 第4期

2021年4月

福 建 电 脑

Journal of Fujian Computer

Vol.37 No.4

Apr. 2021

师生双选系统的设计与实现

周旺

(南京邮电大学通达学院 江苏 扬州 225127)

摘 要 随着互联网的快速发展,高校中对软件的依赖也越来越大,很多活动都是基于软件才得以实现。与此同时,要求学

生对软件的建模和部署也变得越来越高。及时采取措施响应软件的变更,让软件更加融合于生活之中,不仅能提高学生对软

件策划的能力,也能够提高学生对软件的编码能力。本文讲解了师生双选系统的实现过程,以及基于Vue、Spring Boot、

Mybatis框架来实现的主要功能,开发出一款实现师生双选功能的系统。

关键词 数据库;Mybatis;;Spring Boot

中图法分类号 TP315 DOI:10.16707/.2021.04.034

The Design and Implementation of Teacher-student Double Selection System

ZHOU Wang

(Tongda College, Nanjing University of Posts and Telecommunications, Yangzhou, China, 225127)

1 引言

随着计算机应用的迅速发展,越来越多的软件

被开发应用于市场。以B/S结构为基础的师生双选

系统,能够极大地提高老师与学生之间的自主选择

性。它的框架采用前端Vue,后端SpringBoot、

Mybatis。师生双选系统的使用能够更好地服务于高

校,方便师生使用。

交流均非常麻烦。目前,已经有越来越多的高校通

过系统来实现老师和学生之间的选择。这样极大地

提高了老师和学生之间的主动性,也不需要麻烦辅

导员来进行双方信息的传递

[1]

3功能展示

3.1双选功能

2 大四学生毕业设计现状

在大学中的最后一学期,毕业论文成了最后的

一项考核科目。完成毕业设计的答辩和论文的提交

就意味着结束了大学生活。完成论文的前提是先选

择自己的一位老师。通常辅导员会在群里发一个

excel表格,里面包含多名老师的信息供大家选择。

这时老师无法及时知道自己被学生选择的情况,因

此比较麻烦。而且,若老师通过QQ群来完成与学

生之间的对接,把任务发送给学生,学生再通过老

师布置的作业,把最终的作业完成情况发在群里或

者老师的QQ邮箱。这种模式会导致师生的操作与

———————————————

本文得到南京邮电大学通达学院大学生技创新训练计划省级项目(No.2Y)资助。周旺,男,1998年生,主要研究领域为计算机应用系

统、软件工程。E-mail:*****************。

图1 可选择老师信息

在此项目中建立多个数据表,其中有学生、老

师、学生-老师三个数据表。通过学生和老师的信息

导入,获取当前学生、老师信息。每一位老师绑定

一道毕设题目,管理员可以修改老师的信息以及该

老师的课程。学生通过登录自己的账号,可以看到

124 周旺:师生双选系统的设计与实现 第4期

个人信息,同时还可以看到当前可以选择的毕业辅

导老师,如图1所示。

此时老师的信息包括当前可选择状态、可以选

择的剩余数量。当选择多名老师后,此时在已选择

老师的菜单栏中显示出老师的信息,如果撤销自己

的选择,可以退选该老师,如图2所示。

图2 已选择老师的情况

此时已经有两位老师被选择,当进入其中一位

老师的界面时,可以看到当前被选择学生的信息。

老师可以根据自己的意愿来决定是否选择该学生,

如图3所示。

图3 老师当前的界面

若此时该老师选择这位学生,当前页面即变为

打分页面,如图4所示。

图4 学生打分界面

此时其他老师的界面将不会再出现该学生,完

成师生双选系统的流程操作成。当老师给学生打分

后,在管理系统界面可以查看当前学生的分数,并

且可以对学生成绩和老师信息进行修改。例如当已

经选择的老师因一些事情辞职时,管理员会允许该

学生更换老师。

3.2

其他功能

当用户登录完成之后,该系统会保存后台传入

的cookie值,作为数据提交的命令牌。登录密码使

用md5加密处理。使用md5加密处理后返回的字

符串,反向还原密码的可能性低。这样可以避免数

据在提交的过程中密码被窃取

[2]

。管理员界面主要

可以实现的功能有修改老师、学生的信息,也可以

查看学生的选题情况和成绩,还可以增加额外的管

理员。

学生、老师、管理员都拥有修改密码和查询老

师、学生信息的权限。如果系统操作有误,那么后

端会传来相对应的拦截器,同时将反馈错误信息给

前端。每个用户的界面都有查询信息的功能。当使

用vue过滤器查询的时候,速度较快,但只能适用

于当前的数据,无法查询到下一页的数据。相对于

vue过滤器查询,该系统对后台的信息查询更为准

确。此时根据前端的参数值传入到后端,后端使用

select来筛选出数据,再返回到前端。

每个用户界面都有分页的功能,对学生和老师

的数据进行分页,能够很好地管理多个数据。当对

当前页面的数据进行增删改查操作的时候,系统就

会更新数据,将新的一页信息分享给当前页面。使

用分页处理,可以很好地减少前后端的的压力,对

用户来说也是很好的视觉效果。

4实现技术

4.1前端

该系统前端使用Vue、Element-ui框架,用axios

实现对后台的请求操作,编译工具为Hbuilderx。通

过可视化Vue和Vue Devtools来实现对项目的运

行。可视化Vue能够打印出当前项目运行的日志信

息,Vue Devtools

能够及时跟踪state的状态

[3]

在项目设置上,主要有老师、管理员、学生、

路由管理、ajax。在主要的入口文件中设定

学生、管理员、老师的大体模型结构,通过

Element-ui的组件化实现对项目进行整合和分配。

使用Element-ui框架让整个界面看起来简洁,并且

Element-ui也是响应式框架。随着当前界面的缩放,

组件的长度和宽度也会发生相应的变化,而且

Element-ui也有css的属性,对项目的部署同样非常

重要

[4]

4.2 后端

后端使用Spring Boot和Mybatis框架,编译工

2021年 福 建 电 脑 125

具为IntelliJ IDEA。使用Spring Boot而不是SSM

框架因为Spring Boot简化了Spring的搭建过程,

而且完全可以胜任该项目。而SpringMvc配置比较

繁琐,因此需要使用Spring Boot来代替。

对数据库的设计首先需要设定多个数据表,如

学生、老师、管理员、学生-老师、课程、班级等数

据表。在学生-老师这个数据表中,每一位学生对应

的值为choose,用来标记学生是否被老师所选择。

当choose为0的时候,表示该学生还没有被老师所

确定;当choose为1的时候,表示该学生已经被老

师选择。

当前端界面学生点击选择老师的时候,后台接

口会选择调用controller层,依次调用service、dao、

mapper映射到数据库中,将学生和老师的信息放入

数据库中。此时将设置choose值为0,表示未被确

定。当从老师界面点击选择学生的时候,此时调用

后台接口,通过该方法来实现对当前choose值的更

新,并删除该学生当前其他老师的选择信息,只保

留当前信息。通过老师的打分可以实现将已经更新

的数据传送到后端,并且调用mybatis-plus的update

方法实现对成绩的更新。此时后端再次更新新的数

据到前端页面,使当前页面刷新

[5]

在开发项目过程中会遇到很多jar包。由于jar

包管理起来较麻烦,因此使用Maven对jar包的管

理。Maven项目使用起来非常方便,例如打包、自

动导入依赖、构建项目等。

在后端使用了异常处理,例如当前端放送的参

数为null的时候,此时将null返回给前端提示异常。

对前端发送来的数据进行md5加密处理,即将数据

采用哈希值进行填充。

5 结束语

随着科学技术的不断发展,人们越来越喜欢追

求线上的简便。在该系统中,学生不仅可以选择自

己喜欢的老师,还可以进行多个选择。从老师的角

度来说,他们可以通过显示当前学生的信息来选择

自己喜欢的学生。这样就提高了师生双方的主观

性,有着非常显著的使用价值。利用该系统上的双

选,代替线下的选择,可以有效地保护数据的安全。

该系统紧跟web程序设计的步伐,采用框架Vue、

Spring Boot、Mybatis这些框架能够让整个网站稳定

地运行。若前端使用

html、css、js来编写的话,则

代码会显得很繁琐,而且很多功能实现的方式会比

较复杂。如果采用jsp实现系统,则可以通过Tomcat

来实现系统的运行,但是jsp的性能太低。Vue框

架简单,并且有Element-ui文档作辅助,可以很方

便地调用组件来实现作品,通过axios实现对数据

的请求,能够实现跨域,速度相对ajax快了很多

[6]

使用前后端分离技术能够让项目性能提高,实现高

内聚低耦合,同时也减少后端服务器的压力。

要进行一个系统的开发,首先要想好数据的设

计和框架的选择。后台每个接口设计完成后需要进

行单元测试,必要的情况下需要采用Postman工具

来检查接口的正确性。只有把整个系统的每一个步

骤都设计得合理、完善,才能实现该系统的最大价

值,更好地服务用户。

参 考 文 献

[1] 张申,罗驱波,吴新新,等.高校毕业设计网络管理系统.电气电子教学

学报, 2004, 026(006):119-121

[2] 崔永辉,贾连兴,张江. MD5算法研究.中国自动化学会系统仿真专业

委员会、中国系统仿真学会仿真技术应用专业委员会.第17届中国

系统仿真技术及其应用学术年会论文集(17th CCSSTA 2016).中国

自动化学会系统仿真专业委员会、中国系统仿真学会仿真技术应用

专业委员会:中国自动化学会系统仿真专业委员会,2016:225-227

[3] 廖泽泉,鲍正德,唐娅雯.浅析Vue框架.计算机系统网络和电信,2019,

001(002):85-88

[4]

旷星,张文登,牛晓玲,等.一种基于element-ui实现表格嵌套表单功能

的方法,中国,2020

[5] 连瑞梅.基于Java的选课管理系统的设计与实现.电脑知识与技术,

2020, 16(05):73-77,83

[6] 王璐,崔保磊,潘红霞,等.基于的在线设计开放平台研究与实现.

信息技术与信息化,2019, 000(011):168-170


本文标签: 学生 老师 实现 选择 系统