陈南 毛玉萃

摘要:阐述了在线网络报名系统的必要性和可行性;介绍了采用MVC模型按照面向对象的开发方法进行开发的各阶段;最后对该软件进行评价。

关键词:报名系统;软件开发; MVC模型;java web

中图分类号:TP311.52 文献标识码:A 文章编号:1009-3044(2018)17-0027-04

1 背景

校园内各个活动越来越多,为了提高报名工作的效率。在报名期间,想参赛的同学可以通过报名地址查看活动详情,浏览和修改自己的报名信息,完善个人信息,以及查看已报名参赛人员的信息;管理员也可以通过网络进行后台管理查看报名情况以及参赛人员的信息。采用网络报名会使流程显得格外简洁、方便,也可以减少人工出现的误差,减轻工作人员的负担。还能减少报名时候冗长的等待,大大提高效率。

采用信息管理系统已经成为管理科学化和现代化的重要标志。该文介绍的“校园网络报名系统”是按照面向对象的开发方法进行开发的[1-2]。

1.1 网络在线报名的必要性

传统报名流程受空间、传播渠道等的限制,报名工作人员相关繁杂,统计工作难,传统的报名方式中,其信息宣传范围小,报名者需要到指定地点报名,过程烦琐,工作效率低。工作人员在报名信息管理中容易出现错漏、误填等情况。通通过网络技术不仅可以对 报名信息进行快速有效的推广,而且还具有信息储存量大,报名简便、成本低等优点,提供给我们的处理信息及时准确,因 此我们可以利用计算机网络,实现动态的报名信息管理,简化 报名流程,方便工作人员管理报名数据。[3]

1.2 国内外相关研究情况

在线网络报名系统已不再是什幺新的话题。网络上的各种在线报名已经显示了当前各个行业对信息奇数的运用与重视,拥有计算机奇数的人已不在少数,改革开放以后,中国信息化产业开始崭露头角。当然在线报名系统就是其中运用,各种各样的报名无一例外的都是使用了在线报名方式。因此特地开发一款应用于校内网络报名系统。

1.3 网络在线报名开发意义

该系统开发的正题任务是实现全自动在线网络报名系统,依赖于机器自动维护工作,减少了传统报名方式工作人员的纰漏以及错误,如今服务器已经比较完善、稳定性也较高,所以依赖于网络替代人工劳动还是很靠谱的。

使用网上报名系统对采集信息进行管理,具有手工管理无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等优点。同时利用此报名系统,减轻劳动强度、减少人员负担、提高精度;亦可清楚的了解参与者的报名情况,为后期安排提供了方便。

2 网络报名系统的分析

校内网络报名系统其主要用户包括校内举办的各种活动的社团工作室甚至学校举行的活动,要完成展示活动相关介绍,报名,查看当前参与人员,以及活动后的结果/成绩;

为了到达上述目标,系统要实现的主要功能如图1所示。

前台主要功能有:

1)活动通知:可以查看活动的必要信息;

2)活动报名;

3)参赛人员名单;

4)活动结果/成绩的展示。

后台管理主要功能有:

1)报名系统;

2)参赛人员管理;

3)比赛结果成果录入;

4)短信提醒活动通知。

3 基于面向对象的网络报名系统的设计[3]

3.1 架构设计

采用基于WEB技术的MVC模型进行架构,将系统分为Controller层、Model层、View层、,将使用暴行系统的所有用户可见的部分放入View层,View层负责软件的逻辑以及功能模型,在View层和Model层之间加入Controller层负责沟通Model层和View层,以及处理页面传来的数据,之后把数据交给Model层进行封装,再把Model层的处理结果返回给View层。实现报名系统,基于互联网能够有效降低人工劳动, 还能实现本地集中管理,系统管理和维护成本最小,只需利用浏览器,通过网页录入数据,即可报名成功,或者查看相关资讯,操作明了。 总体框架如图2所示。

利用ajax技术保证了操作响应的及时性,ajax可以实现页面的局部刷新,提高用户体验感觉,避免了较长时间的等待,以及使用ajax的异步处理请求,例如在用户输入完学号后,判断该ID是否符合本校学号的命名规则,以及异步请求数据库判断该学号是否存在,大大减少了用户因操作不当而耽误的时间。

网络报名系统主要由servlet和ajax负责数据的交互,前端通过servlet或ajax将请求发给Controller层,如果进行的是报名或者查询参赛人员名单时,通过jdbc进行数据库插入或者查询,将结果返回给Controller层,Controller层将查询结果同样以servlet将结果发送给View层进行显示或者返回JSON字符串由ajax进行解析达到局部刷新的功能.如果该操作不需要查询数据库的话,servlet处理完请求之后,直接返回到View层进行显示。

3.2 面向对象建模

3.2.1 用例建模

经过分析,可以将系统用户分为两类参赛者和管理者。

管理者的权限主要分为个人管理、参赛人员管理,活动通知,短信提示参赛功能,以及录入赛后/活动的成绩或者成果展示这五大类。

学生用户的权限主要分为个人管理、报名、查看当前参赛人员,查看赛后/活动的成绩或者成果展示这四大类。

3.2.2 静态建模

根据对系统功能以及用例模型的分析成果展示我们将比赛结果以成绩为例总结出系统的数据库主要由user表、score表构成。

user表主要负责存储参赛/管理员的个人信息,主要包括学生的学号作为主键,学生的姓名、专业班级、密码、联系方式、以及管理权限“0”代表参赛人员,“1”管理员,由管理权限区分user将可以进行的某些操作,以及可以访问的权限。

score表主要负责存储参赛人员的成绩,主要包括学生的id号作为主键以及user表的外键、总成绩、以及各项分成绩。

3.2.3 动态建模

动态建模包括时序图,协作图,状态图,活动图。这里以活动图和时序图为例进行描述。

1)活动图的建立

根据系统功能结构设计,系统主要由个人管理、比赛管理这两个个功能模块组成,这里主要说明一下比赛管理中的报名功能。

参与者在注册完,登陆成功后,填写报名信息录入联系方式及其他部分信息提交到ApplyServlet,在ApplyServlet进行封装数据,参与者的学号由登陆时User信息放入Session中取出得到。将封装好的数据传至ApplyService中进行数据的校验,如若数据不和法,将错误信息返回值ApplySerlvet,并由ApplyServlet返回错误信息至personal_apply.jsp,请求重新输入。如果合法继续将数据传送至UserDao进行数据的更新操作达到报名成果的结果,成功则将跳转至参赛人员名单列表,并提示参赛时间。整个报名流程就是这样子的。

2)时序图

或将参赛人员的时序图如图4所示。

3.2.4其他功能设计

使用将首页分块,动态加载。

注册时验证学号是否正确以及显示参赛人员列表等操作使用ajax异步请求

切换界面使用ajax实现局部刷新的功能

利用Session防止表单重复提交(token)

4 基于面向对象的网络报名系统的实现[4]

4.1 数据库逻辑设计

在线网络报名系统其数据库是基于MySQL数据库进行搭建的。数据库中的表主要由user表、score表组成。

如静态建模所说, user表主要负责存储参赛/管理员的个人信息。score表主要负责存储参赛人员的成绩。

user表得具体结构如表2所示。score表得具体结构如表3所示。

系统整体E-R图如图5,用户与成绩的关系是一对一的。以及可以在此基础上根据活动需求进行扩展。

4.2 系统运行结果展示

系统首页如图6所示。通过js判断是否在报名时间范围内,如果符合返回显示“报名”,单击后出现如图7的系统报名界面。如果不符合则显示“报名截止!”点击无反应。

5 结束语

计算机技术的发展和网络应用的普及,改变了很多方式,逐渐地由科技取代人工劳力。网上报名系统的应用有利于提高生活质量,让枯燥繁杂单一的工作都交由机器帮我们去做,解放了我们的双手,这正是我们想要的结果。即减少了管理者手工忙碌的时间,也大大提高了参赛者的积极性,足不出户达成报名的效果。亦可预留与数字化校园相关应用系统的开发接口,以扩大报名系统的应用范围。总之,在互联网和高效信息化不断发展的今天,各种形式的报名系统必将得到更加广泛地应用。

参考文献:

[1] 张海藩, 牟永敏. 软件工程导论[M].6版. 北京: 清华大学出版社, 1996, 7(1).

[2] 毛玉萃, 邱少明, 杨文艳, 等. 软件项目实践案例教程[M]. 北京: 清华大学出版社, 2014(9).

[3] 罗安东. 网络在线报名系统的实现与意义[J]. 信息通信, 2015(6): 152.

[4] 刘勇军. Java Web核心编程技术[M]. 北京:电子工业出版社, 2014(9).