基于B/S架构的勤工助学系统设计与实现
2023-06-25李欢王杨俊万珊
李欢 王杨俊 万珊
摘 要:勤工助学是高校学生资助工作的重要组成部分,是提高学生综合素质和资助家庭经济困难学生的有效途径,是实现全程育人、方位育人的有效平台。将信息技术运用到高校学生勤工助学管理中,不仅能够有效提高管理效率,降低人工成本,还可以更加高效地解决贫困生与岗位匹配的问题。因此,文章运用B/S架构模式,结合SSM框架、jsp技术、MySQL数据库和Tomcat服务器,设计并实现了勤工助学系统。并且根据每一个学生需求,使用协同过滤算法,进行个性化岗位推荐,提高岗位的匹配度。
关键词:勤工助学;协同过滤算法;B/S架构;MySQL数据库
中图分类号:TP311 文献标识码:A 文章编号:2096-4706(2023)06-0028-04
Design and Implementation of Work-study System Based on B/S Architecture
LI Huan, WANG Yangjun, WAN Shan
(Jiangxi University of Chinese Medicine, Nanchang 330004, China)
Abstract: The work-study program is an important part of university student funding work, an effective way to improve students' comprehensive quality and support students with financial difficulties in their families, and an effective platform to achieve all-round education. Applying information technology to the management of college students' work-study program can not only effectively improve the management efficiency, reduce labor costs, but also more effectively solve the problem of matching poor students with posts. Therefore, this paper designs and implements a work-study system by using B/S architecture mode, combining SSM framework, jsp technology, MySQL database and Tomcat server. According to the needs of each student, collaborative filtering algorithm is used to recommend personalized post, which can improve the matching degree of posts.
Keywords: word-study program; collaborative filtering algorithm; B/S architecture; MySQL database
0 引 言
为促进教育公平、保障教育平等、优化教育结构,国家提出助学贷款、国家助学金、学费减免、勤工助学、一次性求职补贴等资助政策[1]。勤工助学作为高校学生资助工作的重要组成部分,不仅可以为家庭经济困难学生提供经济帮扶,还能培养学生自立自强、创新创业精神[2,3]。目前,随着高校招生规模的不断扩大,学校提供的勤工助学岗位也在增加,加入勤工助学岗位的学生也同步上升[4]。为了更加高效地做好勤工助学管理工作,提高资助工作的水平,利用信息技术,开发了一款勤工助学管理系统。
该系统是基于B/S架构[5]的模式下采用Java语言进行开发,整合当下流行的Spring、SpirngMVC和Mybatis技术搭建一个SSM框架,前端采用jsp结合jQuery和Ajax等技術动态展现页面[6,7],实现了学生、教师、系统管理员三种用户的不同需求,最终达到系统管理员对部门、教师、学生信息进行管理;教师分为部门管理员和非部门管理员,部门管理员教师可以管理岗位、部门人员信息、以及审核学生申请;学生可以申请助学工作、查询工作记录、以及查看申请记录;为了提供岗位的匹配度,本系统还设计了一个推荐模块,该模块利用余弦相似度算法计算与学生匹配度高的岗位并推荐给学生。该系统的使用,可使实现高校勤工助学管理工作的系统化、规范化和信息化。
1 系统架构与设计
该系统的数据层主要采用了MySQL数据库,为功能层提供数据的接口。系统的设计采用MVC的架构方式,M表示数据库访问层;V表示用户界面层,该层主要是用户操作的窗口,用户可以直接操作网页和表单来实现与系统的交互;C表示功能模块层,是用户界面层和数据层相互连接的桥梁,负责业务逻辑的判断,业务处理和数据传递,不在表示层访问数据库,数据更加安全。采用这种结构可以使得系统结构更清晰,分工更明确,有利于系统后期的维护和升级。
系统主要分为4个模块,分别为:系统管理员模块、教师模块、学生模块和公共模块。系统管理员模块可以管理部门信息、教师信息、学生信息和岗位信息,对它们进行增删改查;教师模块分为岗位管理、审核管理和人员管理三个功能,只有部门管理员身份的教师才能对岗位信息进行增删改的操作;学生模块可以申请助学工作、查询工作记录、查询申请记录;公共模块可以查询和修改个人信息,系统总体架构图如图1所示。
2 系统数据库设计
本系统采用MySQL数据库来实现数据的存储,系统数据库部署在Tomcat服务器上,实现统一的数据管理。数据库表的设计主要包括7个:系统管理员表(admin)、教师表(teacher)、学生表(student)、部门表(dept)、岗位表(station)、记录表(record)和申请审核表(apply_approval)。
系统管理员表有id、username和pwd三个字段,其中id为该表主键,其他两字段用于系统管理员登录系统。
教师表有t_id、t_no、t_name、t_pwd、gender、tel、email、
dept_id、status和power这几个字段,t_id为主键,作为教师的唯一标识,t_no和t_pwd作为教师登录系统的账号,dept_id表示该教师选择在哪个部门工作,status表示该教师的状态,是否辞职,power表示该教师是否有权限对该部门进行管理,其他字段为教师的个人信息。
学生表有stu_id、stu_no、stu_name、stu_pwd、gender、stu_class、birthday、politics、tel、email、credit_card、address和status这些字段。stu_id作为主键,stu_no和stu_pwd作为登录账号密码,status用于表示该学生是否在校,其他字段表示该学生详细信息。
部门表有dept_id、dept_name、introduct、t_no、status、t_name、tel和email这几字段,其中dept_id为该表主键,t_no表示该部门的部门管理员编号,status表示该部门是否对外发布了岗位工作,其他为部门信息。
岗位表有station_id、station_name、dept_id、dept_name、total_num、salary、start_time、end_time、introduct、status、remainder_num、start_date、end_date这些字段,其中station_id为主键,dept_id为外键,链接部门表的主键,total_num和remainder_num用于表示该岗位招收的总人数和目前所剩的人数,当教师审批了某个岗位职位给学生后,remainder_num会减一,如果remainder_num减为零,该岗位将不会出现在学生申请工作的模块中,start_date和end_date用于表示该岗位开始、结束的日期,而start_time和end_time用于表示一天中具体的时间段,status表示该岗位是否还招收学生,其他为岗位的信息。
记录表有record_id、stu_no、station_name、dept_name、salary、start_date、end_date、quit_reason、status、stu_name、dept_id和station_id字段,record_id为该表的主键,stu_no用于记录哪位学生申请了该岗位,并在学生模块的工作记录中进行展示,其他字段为已申请岗位的详细信息。
申请审核表有apply_approval_id、apply_type、station_id、station_name、dept_id、dept_name、stu_no、stu_name、apply_time、apply_reason、income、experience、morality、discipline、t_no、t_name、approval_time、approval_views、approval_status和apply_status这些字段,其中apply_approval_id为该表的主键,对应一个申请审核,申请的信息是学生在申请该岗位时填写的,审核信息是部门管理教师在审核管理中对学生品德等进行评估后确定该学生是否符合需求,再给予岗位职位,apply_type有两种类型,为岗位申请请求和岗位辞退请求,morality表示学生的品德,discipline表示学生是否有犯错,experience表示学生是否有过该岗位的工作经验,income表示学生的家庭年收入,教师可通过这几个字段进行详细审核。
3 系统功能實现
3.1 公共模块
公共模块包括用户登录和信息管理,是不同用户都具有的相似操作,但通过不同身份,系统设置有区分其身份的选项,用户通过选择自身特有的身份方可获得权限进行访问操作共有模块。信息管理设置在每个用户登录后的主界面菜单列表之一,里面包含个人信息修改和密码修改两个子模块。
用户登录是本系统访问者的访问通道,用户进入界面后,可以看到用户名、密码和下拉框选择用户类型三大必输入项。每个用户需要根据自身的准确信息输入才可顺利进行系统访问,若出现任一项输入有误,系统将给出错误提示。
在公共模块中,每个用户都有权更改其登录密码和基本个人信息。一般流程分为:登录系统—信息更改—个人信息更改/密码更改—信息验证/密码验证—否/是—返回重新验证/保存更改信息。流程如图2所示。
图2 用户信息修改流程图
3.2 系统管理员模块
系统管理员具有系统的最高权限,其私有模块包括部门管理、教师管理、学生管理三个子模块,系统管理员只设置一个账号。系统管理员的主要功能是对系统中部门、教师、学生和岗位信息进行维护,对各部门申请添加的勤工助学岗位进行审批和发布。部门管理中,系统管理员可实现新增部门、修改部门和删除部门,以及设置每个部门的管理员账号;教职工管理中,系统管理员可以对教师信息进行增删改查;学生管理中,系统管理员可以对学生信息进行增删改查。界面如图3所示。
3.3 教师模块
教师模块包含岗位管理、审核管理和人员管理三个子模块。主要功能是新增和删除勤工助学岗位、查看应聘学生信息、给学生发布面试和录取通知、在职学生信息管理、劳务费发放等。教职工可在岗位管理中对岗位信息进行增删改查,在审核管理中查看应聘学生的简历、给学生发送面试和录取通知以及查看学生的基本信息。在人员管理中可对已经离职的学生进行標记离职,对未离职的学生发放每月的劳务费。教职工模块界面如图4所示。
3.4 学生模块
学生模块主要包含助学工作、工作记录、工作管理和申请记录个四子模块,主要功能是查询和浏览岗位信息、岗位申请、工作内容记录和推荐想要的岗位。界面如图5所示。
为了让学生可以找到更加适合的岗位,在助学工作模块运用了基于用户的协同过滤算法[8,9],提高岗位的匹配度。具体实现步骤为:首先从数据库中查询出该学生以前申请过的岗位的部门编号,再从数据库中查出所有其他学生申请岗位的部门编号,构成用户行为矩阵。在通过余弦距离计算出该学生与其他学生的相似度。用户相似度计算时,要考虑分母为0的情况;同时要防止数值太大,超过了double能表示的范围,可以做一些处理,例如减去某个值。余弦值越接近1,表明两个向量越相似,即计算出来的值越大,用户行为越相似。然后将相似度从高到低排序,可在底层设定相似度的阈值,大于该阈值认为两个学生之间相似。取到相似学生的数据后,再统计这些学生申请过的岗位,并对这些岗位进行排序,推荐界面中会根据岗位排序从高到低的推荐岗位。
4 结 论
为了实现每一个学子不会因为家庭经济困难上不了大学,国家出台了一系列资助政策。勤工助学就是资助政策中的重要一项,但随着各高校招生数量的扩大,参加勤工助学的学生增加,传统的管理方式不够系统化。因此将信息技术运用到勤工助学管理中,构建一款勤工助学管理系统,通过网络平台实现供需双方的双向选择、学生信息的及时整理归档、部门招聘岗位的发布、学生的工作安排、劳务费的发放和查询等。运用SSM框架设计的勤工助学系统的开发打破了传统的运行模式,使此项工作逐步走向了系统化、规范化、专业化的道路。另外,勤工助学系统的开发提高了工作效率,是信息技术飞速发展的产物,也是学校建设数字化校园,进行教育信息化改革的体现。
参考文献:
[1] 王安岩.高校勤工助学对大学生发展影响研究 [D].北京:北京科技大学,2020.
[2] 陈玉婷.就业创业能力导向下的大学生勤工助学——以重庆市大学生为例 [J].中国大学生就业,2022(13):16-23.
[3] 袁家祺.大数据时代高校学生资助育人探索 [J].黑龙江人力资源和社会保障,2022(13):158-160.
[4] 卞秀运,彭军.大学生勤工助学管理系统的设计与应用研究 [J].电子元器件与信息技术,2018(10):14-16.
[5] 白冰心,谭玉敏,王帅,等.基于B/S架构的群测群防监测信息上报系统研究 [J].防灾减灾工程学报,2020,40(3):447-452.
[6] 李洋.SSM框架在Web应用开发中的设计与实现 [J].计算机技术与发展,2016,26(12):190-194.
[7] 王艳清,陈红.基于SSM框架的智能web系统研发设计 [J].计算机工程与设计,2012,33(12):4751-4757.
[8] 覃琼花.基于协同过滤算法的个性化推荐系统研究 [J].科技资讯,2022,20(10):4-6.
[9] 刘华玲,郭渊,马俊.协同过滤中相似度算法研究进展 [J].计算机工程与应用,2022,58(13):27-35.
作者简介:李欢(1995—),女,汉族,江西萍乡人,助教,硕士研究生,研究方向:中医药信息学;王杨俊(2001—),男,汉族,江西萍乡人,本科在读,研究方向:中医药信息学;万珊(1985—),女,汉族,江西南昌人,讲师,硕士研究生,研究方向:大学生思想政治教育。
收稿日期:2022-10-16
基金项目:江西省大学生创新创业训练计划项目(S202110412057);江西省教育厅科技计划研究项目(GJJ211256)