基于B/S架构的高校学生信息管理系统设计
2022-11-12王强
王强
(德州职业技术学院 山东省德州市 253034)
近年来,随着我国高校扩招进程的不断推进,各高校学生数量仍在不断增长,使得高校学生数据信息规模进一步扩大,这些信息具有海量和庞杂的特点,在这种情况之下,传统的信息管理模式已经难以满足实际需要,容易造成信息的准确性下降,对于高校信息化建设也造成制约。对此,应当整合当前的新技术,对高校学生信息管理系统进行优化设计,以实现预期目标功能。
1 系统整体架构设计
1.1 系统基本架构
根据学生信息管理系统的基本需求和遵循原则,在本次研究中,采用主流的B/S架构进行开发[1],该架构由三层级所组成,表1简要描述了各层级承担的基本职能。
表1:系统层级及功能
在此基础上,为进一步提高系统架构的运行效率,在本次设计中,开发人员选择适合Java开发语言的MVC架构开发模式,以降低业务逻辑之间的耦合度,推动整体系统架构的模块化,适应后期拓展的需要[2]。
1.2 数据库设计
在数据库设计中,考虑到学生信息管理系统的实际需求,采用MySQL2019型数据库,并以用户信息表作为基础数据表,如表2所示。
表2:用户信息表
考虑到该系统涉及到较多的数据信息,因此本次系统设计中,数据库的处理逻辑分为以下几个步骤:
(1)向数据库传输需要传输的信息;
(2)传输信息后,数据库方面将对信息接收情况进行判断,对接收到的信息进行校验;
(3)校验通过的数据信息将被分类整理在数据库中,而其他信息不进行存储。
另一方面,在实际的数据库设计环节当中,为确保数据库的安全性,设计人员将数据库文件系统设置于云端,并采用RAS整合AES的加密方法,对数据库中的数据进行加密设计[3]。
1.3 系统软件设计与安装
整体来看,系统软件设计流程与架构设计环节相类似,沿用“MVC+Java”的综合设计策略。同时,设计人员以当前主流的SSM框架为基础,辅以Elipse2018软件进行集成开发工作。由此确定系统软件设计的基本流程如下:
(1)在用户登录系统后,系统对配置信息自动进行搜索,并执行相应函数对数据信息进行检索和定位;
(2)程序根据MVC配置信息,将用户的查询请求交由用户编写的实例化模型进行处理;
(3)根据xml格式的配置信息,确定数据关联方法,根据这种关联方法获取对应的数据;
(4)将获取到的数据予以显示。
在确定以上流程后,设计人员分段编写相应代码,以实现软件的基础部分[4-5]。
在软件基础部分设计完成后,技术人员开始进行软件的安装,此环节分为以下几个步骤:
(1)使用Inno Setup工具进行系统安装程序的制作,并使用vs2015将项目以Debug模式重新生成;
(2)应用多重密码加密算法(图1),及exe文件加密器,对本次设计的程序进行加密;
图1:多重加密的基本原理图
(3)加密完成后,点击创建完成的快捷方式,由软件自动识别计算机的编码,在引导下逐步完成注册环节[6]。
2 系统整体功能模块设计
2.1 系统登录模块设计
在设计该模块的过程中,考虑到实际的功能需要及操作便利度两方面的需求,设计人员逐一编写相应的代码段,这些代码主要用于实现登录窗体的展示、登录窗体的尺寸、界面颜色等部分;而后编写代码实现登录输入框,并对用户名及密码进行验证。以上代码设计完成后进行组合,即展现出信息管理系统的登录界面(如图2),该界面通过输入内网IP地址即可转到,再输入正确的用户名和密码即可成功登录系统。
图2:系统登陆界面
在用户登陆成功后,系统会自动呈现出主菜单。对于管理员账户,则可使用全部的功能,其他账户则可使用其权限内的功能。同时,为实现各类用户权限的合理控制,避免出现非法访问的情况,本环节采取差异性路由设置的模式来规避上述问题,在这种模式下,每个用户均具有一个权限函数,以此实现权限的准确定位和确定。
2.2 用户管理模块设计
在本次设计的高校学生信息管理系统中,账户主要分为三类:
(1)学生辅导员账户,其权限相对较低,主要可检索系统中的学生信息;
(2)学生工作处管理人员账户,该账户权限相对较高,能够在数据检索的基础上,对学生信息进行部分修改;
(3)系统管理员账户,该账户具有最高的权限,能够对整体系统进行控制操作。
具体来看,在该模块当中,主要面向用户的个人信息和操作权限两个组成部分,在该模块下,用户必须注册账号并输入正确的账号密码后,才能对此系统进行访问,这种设计有效确保系统的安全运行。在此基础上,为了进一步提高系统的安全性,在该模块的密码设计中,基于MD5算法,设置数字和大小写字母的混合密码模式,并确保密码长度在20位,有效降低了密码被暴力破解的可能。该密码作为用户登录系统平台的主要依据,当用户登录系统平台后,根据用户身份的不同,平台将对用户赋予其应有的操作权限,避免出现非法访问等情况。另一方面,为实现对相关用户账户行为的管理,本次基于监控模块,通过调用get_user_monitor_data(self)函数进行监控,以实时查看用户的操作行为,避免用户出现非法操作等问题[7]。
2.3 系统查询模块
为实现本系统的预期功能,实现对各类信息的检索和操作,在本环节的设计中,首先对核心控制类函数及功能进行确定,具体如表3所示。
表3:核心控制类说明
基于此核心控制类,该模块即可实现对信息的检索、修改和增删操作,为实现具体流程,主要通过以下几个步骤展开设计:
(1)创建一个List,用于对数据库内所有用户对象的遍历,并将所有的信息和状态均存储于数组当中;
(2)判断user对象传过来的数值是否为空值,如不是空值,则通过用户的ID去调用其他的数据库(用户未登录情况下无法访问该静态资源);
(3)通过业务层的find方法,遍历某个模块信息的明细,如需要进行具体信息的搜索,则预先通过模糊查询进行拆分,将此过程中产生的key值传到后台进行查询;
(4)在执行相应代码后,系统将嵌入了格式化标签的检索结果字符串传输给Service层,最终会传递给Action层两个属性值,在得到属性值后,视图层中也将最终显示出相应的查询结果。
另一方面,在此模块中,为避免未登录用户查询到数据库中的静态资源,在代码中加入security的判定,用户未登录时,该项指标设置为“none”,确保用户未登录时无法访问数据库中资源[8]。
2.4 系统接口设计
为确保系统数据传输效率的进一步提升,本次从硬件角度入手,选择C5402 DSP片作为数据传输的硬件接口。在此基础上,设计人员为该接口配备了信号发生器和信号屏蔽器两个辅助元件,其中前者的作用主要是进一步压缩信号传输时间,将其控制在15s以下;后者的主要作用则是对非本频率的信号进行必要的屏蔽,以避免其他模块对数据传输可能引发的干扰效应。
2.5 系统基本功能模块设计
2.5.1 通告管理模块
操作人员在用管理人员账户登录后,可以选择“通知公告”模块添加新的通告内容。在通知公告内容添加成功后,使用权限等级相对较低的账户登录,即可查看到最新的公告时间和具体内容。
2.5.2 界面展示模块
在本次系统设计中,界面展示模块是展示学生信息内容的关键功能模块,其同样采用B/S架构加以实现。在实际设计工作中,通常采用AngularJS框架来实现页面切换控制,并使用路由切换不同的界面视图,确保每个分界面都有唯一的视图模板与之对应。当需要加载不同界面时,通过routeProvider服务上的函数即可加以实现。通过应用routeProvider服务上的函数,能够有效避免不必要的重复作业,降低设计工作的任务量[9]。
2.5.3 前台功能模块实现
该模块是验证用户身份的重要模块,当用户登录发出请求后,该模块将基于handle函数,对用户请求进行判断,如用户身份和权限均正确,则接收用户的提交表单,而后根据表单中的标签内容,启动数据处理的CGI程序,对表单数据进行处理,在处理完成后,数据将被传输至服务器的CGI脚本当中,以最终完成全部的流程。
2.5.4 后台功能模块实现
该模块主要面向系统管理员账户,以实现对系统深层次的控制与管理,同时在检索和编辑信息过程中也发挥着重要的作用。结合实际需要,后台功能模块又细分为导航和内容管理窗口两部分。其中,导航模块采用通用的可隐藏和展现的列表设计形式,这种设计形式与用户的思维习惯相契合;内容管理模块则用来编辑导航模块对应的每一项内容,如学生信息审核、学生信息编辑、学生信息检索和显示学生信息列表等,在列表显示中,选用DBGridEh数据表格组件用来实现列表显示功能,这种组件对于提高数据库系统客户端性能和用户体验均发挥着重要的作用。
2.5.5 配置管理模块
配置管理模块中,主要用于实现数据备份、权限维护、表数据导入、代码管理和日志管理等功能。在以上功能中,权限维护功能的重要性相对更为突出。这主要是由于学生管理工作人员可能涉及到一定程度的变动,这就需要管理员对权限进行必要的维护和管理。在实际访问该模块时,通常基于伪代码Var slt=document.getElementById(“ddlStatusType”),对管理员账户的身份进行确认,确认无误后管理员即可执行相应操作,主要是对数据的整理和更新,并妥善保管数据信息,确保系统的安全性。
2.5.6 数据信息显示模块
一方面,在数据显示功能上,设计人员应用RealTime Page_Load()函数,控制系统内数据的显示和隐藏,并使用send函数进行数据的分流处理与显示;另一方面,考虑到该系统涉及到海量数据的传输和更新,因此应用UpdateQueueValue函数,对数据进行排列与更新。
2.6 数据安全检测模块设计
在数据安全检测模块中,其主要作用是,对新引入数据库的数据进行自动分析,以预先识别和剔除可能存在风险的数据。在该模块中,主要基于DS证据理论,设计相应算法,对数据安全水平进行评估,具体来看,该算法依托于以下公式加以实现:
在该公式中,h1(j)、h2(j)、h3(j)分别表示系统的网络路径延迟变量、延迟变化变量和网络时钟偏移量三个参数。同时,系统会自动设置一个数据信任度安全阈值,并将计算结果与阈值进行比较,如计算结果超过阈值,则证明不存在危险因素,反之则视为不安全因素,并对相应的数据予以处理。
2.7 系统安全模块设计
在高校学生信息管理系统的实际应用环节中,存储着较多的学生信息,且其中大部分信息均属于隐私信息,这就对该系统的安全性带来了更高的要求。为确保该系统能够满足预期要求,在本环节的设计中,基于RSA算法,引入系统数据分类器模块来提升整体系统的安全性。在本次应用的系统数据分类器模块中,包含有规则库,内部存放数据信息的分类规则,规则库根据RSA加密算法,生成对攻击代码的识别规则,再根据该识别规则对相关数据信息进行捕捉。待捕捉到可疑的攻击代码数据后,按照数据库的统一模式,对其进行模拟量化,在模拟量化的过程中设置搜索引擎,将模拟量化后的数据传输到数据库中,如此,在后续的环节中只需通过特征查找功能,即可有效识别各种可能的攻击行为,并给予必要的防范措施。
2.8 数据统计分析模块
为实现对相关数据的统计分析,设计人员引入统计分析模块,该模块主要应用C4.5算法进行设计。在本环节的设计中,C4.5算法主要包括以下两方面的内容:一是决策树算法部分,主要基于原始数据划分数据集,并选出最优特征索引;二是进行决策树的绘制,此环节主要是确定“树”的“叶子节点”和“层数”等信息,而后进行相应的绘制;此环节完成后使用样本数据进行测试,以完成C4.5算法的最终应用。这种算法对于数据属性的判别,主要基于信息增益率加以实现,使得这种算法在数据处理效率和准确性上更具优势,与传统的ID3等算法相比,其综合性能更为突出。在此基础上,引入云计算技术对数据做进一步的统计分析,分析后的结果则生成各种统计数据报表。
3 系统测试
3.1 系统界面测试
界面测试阶段,工作人员主要对该管理系统的界面功能模块布局、颜色搭配、控件放置位置等进行测试,确保其能够符合操作者的使用习惯。通过对目标高校的部分学生管理工作人员进行调查反馈后可知,大部分学生管理工作人员在试用该管理系统后,认为该管理系统的界面设计较为合理,能够满足其使用习惯。
3.2 系统功能测试
在系统界面测试完成后,测试人员进一步测试该系统的功能模块,在本环节中,测试人员对系统的主要功能进行测试,测试方法则采用笛卡尔积的方式进行组合测试,主要测试结果如表4所示。从表4中的内容可知,该系统的几项主要功能均已实现,证明系统在主要功能方面已经满足了预期的使用要求。
表4:主要测试结果
3.3 系统性能测试
为进一步探寻系统的性能,在本环节中,选用同类的两种系统进行对比测试。为确保测试环境的可靠性,以尽可能消除干扰因素,提供更为准确的测试结果。因此,一方面,测试人员部署了多个不同的硬件环境对该管理系统进行测试,测试结果表明,该系统在不同硬件环境下均有着较好的表现,不存在严重的bug,符合使用要求。另一方面,设计人员模拟高并发条件,模拟1500人同时访问平台下的系统响应时间。经过测算后发现,在这种高并发条件下,系统平均响应时间增大至4.3s,虽然较常规时间的1.4s有明显延长,但整体仍然能够保持系统较为顺畅的运行,且能够在2s内完成相关数据信息的传输。而在类似的信息管理系统中,高并发条件下的平均响应时间则在6.8s左右,其与本次所设计的系统相比,存在着一定的差距,这也进一步凸显了本次系统的性能优势。
3.4 系统安全性测试
为测试系统的安全性能,本次选用两台均安装了该高校学生信息管理系统的计算机进行对比试验,其中1号计算机为实验组,在其中植入篡改程序,2号计算机作为对照组,不执行任何操作。而后在两台计算机中输入相同的部分虚拟学生数据信息,并启动数据篡改程序,在2h后对两台计算机中的虚拟学生数据信息进行查看,发现发现当前信息与输入初始阶段的数据信息仍基本保持一致,篡改程序并未对其产生影响,这就表明该系统具有良好的安全性。
4 结束语
整体来看,在本次研究中,通过整合各种计算机和网络技术,初步建设了高校学生信息管理系统,通过对该系统的实际测试表明,该系统能够取得预期的相应功能,证明本次高校学生信息管理系统的设计与实现工作取得了初步的成功,这对于提升学生信息管理水平而言,也将具有一定的理论和现实意义。当然,由于各种主客观因素的限制,本次系统的研究与设计工作也难免存在一定的不足之处,特别是在智能化方面的应用较为缺乏,因此,在今后的研究中,将考虑引入更多的人工智能算法模型,以进一步提高系统应用的智能化水平,推动其实用性的进一步提升。