本系统开发采用技术为JSP、Bootstrap、Ajax、SSM、Java、Tomcat、Maven
此文章为本人亲自指导加编写,禁止任何人抄袭以及各类盈利性传播, 相关的代码+部署+论文+ppt+代码讲解+答辩指导文件都有可私要
项目源码,请关注❥点赞收藏并私信博主,谢谢~
摘 要
随着参加教资考试的学生人数在不断的增加,学校的信息管理工作负担就不断加大,更加便捷的报名平台也被学生们所需求。本文将基于学生们对教资的报名需求为基本,设计开发了一套服务于考生们的高校教资报名系统,旨在为学生们提供更加便利的报名平台,提高教资报名管理工作的效率。
系统主要采用的技术为Java,前端主要为JSP、后台主要为SSM,系统数据库主要为MySQL,主要完成学生、教师、管理员,主要包含的系统的核心模块为教资类型分类、考场管理、学生注册、学生信息管理、教资考试通知、考试统计,教资报名审核,老师管理等。系统设计时首先进行背景调研,然后对需求进行分析,核心阶段为系统模块的设计和编码最后进行测试。该系统的实现可以实现教资报名系统的智能化和线上系统化,更加规范教资考试的报名流程。
关键词:教资考试;教资报名;报名统计;SSM
Abstract
As the number of students taking the UGC continues to increase, the burden of information management in schools is increasing, and more convenient registration platforms are also in demand by students. Based on students' demand for teaching resources, this paper will design and develop a set of university teaching funding registration system for candidates, aiming to provide students with a more convenient registration platform and improve the efficiency of teaching funding registration management.
The main technology used in the system is Java, the front-end is mainly JSP, the background is mainly SSM, the system database is mainly MySQL, mainly complete students, teachers, administrators, and the core modules of the system mainly contain are teaching qualification type classification, examination room management, student registration, student information management, teaching qualification examination notice, examination statistics, teaching qualification registration review, teacher management, etc. The system design is first conducted with background research, then the requirements are analyzed, and the core stage is the design and coding of the system modules and finally testing. The implementation of this system can realize the intelligent and online systematization of the UGC registration system, and standardize the registration process of the UGC examination.
Keywords: Educational examination; Registration for teaching resources; Registration statistics; SSM
目 录
1 绪 论.............................................. 1
1.1课题背景............................................................................................ 1
1.2网站研究现状.................................................................................... 1
1.3研究意义............................................................................................ 2
1.4研究内容............................................................................................ 2
2 开发技术.............................................. 3
2.1 Java技术........................................................................................... 3
2.2 MySQL技术...................................................................................... 3
2.3 Mybatis架构..................................................................................... 3
3 系统分析.............................................. 4
3.1可行性分析........................................................................................ 4
3.2需求分析............................................................................................ 4
3.3非功能需求分析................................................................................ 5
4 总体设计.............................................. 5
4.1模块设计............................................................................................ 6
4.2数据库设计........................................................................................ 7
5 系统实现............................................. 13
5.1教师信息管理.................................................................................. 13
5.2考试科目信息管理.......................................................................... 13
5.3学生信息管理.................................................................................. 14
5.4教资考试管理.................................................................................. 15
5.5学生报名管理.................................................................................. 16
5.6学生报名记录.................................................................................. 17
6 系统测试............................................. 18
6.1测试方法.......................................................................................... 18
6.2测试用例.......................................................................................... 18
结 论............................................... 21
参考文献............................................... 22
致 谢............................................... 23
1绪 论
1.1课题背景
教师资格证考试的参加人数已经随着高校学生的数量越来越多,对于传统的报名模式来说,不仅存在人力资源耗费大的缺点,而且还导致报名工作效率的低下。所以在考试的不断发展,信息化水平也在不断的提高[1]。由于报名信息数量库的巨大,只能依靠互联网信息技术来对该报名模式进行效率的提高和改进。并且在疫情发展期间,许多线下模式都执行尽量少接触的原则,改为线上模式,所以由于疫情的推进导致许多线上的系统开始快速发展,教资的报名系统也在该背景下得到发展和改进[2]。在之后的现在,虽然疫情时期已经过去,但是人们的生活模式已经发生了改变,线上报名不仅可以规范学生们的报名流程,还能简化负责教资报名工作的管理人员的工作流程[3]。
1.2网站研究现状
随着时代教育行业的不断进步和发展,教师资格证于1995年出现在国内的视野中,从过去的发展到现在,教师资格证的相关考试活动的管理模式已经经历了不同的变化。在最开始的报名考试萌芽之期,所有的相关报名活动都是通过人工来记录和信息的保留,但是随着计算机的出现,开始依赖于计算机来存储和处理信息[4]。从过去发展到现在,信息化时代的到来更是意味着教师资格证报名流程的又一步发展和突破。在新冠疫情期间,线上系统的不断发展促进了许多行业的变革和创新,类似于教师资格证的官网报名系统,可以在线上进行账号的注册以及信息的填写,并进行报名工作的进行。但是教资官网是面向全体学生的报名网站,所以仍需要更加针对性的高校教资报名系统来进行更进一步的完善[5]。
与国内的教资系统发展现状而言,国外的教师资格证的考试出现的时间较早,在该信息系统方面一些国外的发达地区发展的会更加的完善,功能也会更加的全面。许多地区都有专门的报名网站来进行教资的线上报名,对报名的学生进行一定的区域分流,并且会根据地区的不同设置不同的特色科目和考试标准,TESOL网站是针对国际上所有国家的教师资格证的报名网站,报名人群的范围更加广泛,使用该线上平台的群体更加多元化[6]。
1.3 研究意义
规范化管理:高校教资报名系统可以规范教师资格认定工作流程,确保认定程序合法、公正、透明,维护社会公正和教育人才队伍的准确性和稳定性。
提高效率:高校教资报名系统可以实现线上报名,可以避免线下报名资源浪费,报名表容易造成大量纸张浪费,以及报名资料遗失和提交不及时的问题,从而提高审查和认定效率,为高校教师更好地从事教学和科研活动提供保障[7]。
数字化管理:通过高校教资报名系统,可以方便地维护,在线查询与更新认定信息等,同时还能够对认定情况进行定期统计,提供科学的决策支持。实现动态的报名信息管理,简化报名流程,方便工作人员管理报名数据。通过建立线上教资系统可代替线下的纸质的报名流程,让教资考试报名流程变得非常的简单[8]。
加强师资培养:高校教资报名系统可以通过多种方式,提供给报名者有用的信息,如报名条件、认定标准、材料要求等,使教师更好地了解专业知识领域,提高专业技能和水平[9]。
节约资源:通过线上报名,不仅节约纸张和人力以及物力等资源,还方便考生跨越地域,减少报名时间成本。
1.4 研究内容
在本论文的研究中主要是通过对软件开发的整个过程进行阐述,主要是通过对此系统的一些类似或者是相关的系统进行调研,然后对系统的一些发展的趋势和研究后期的方式进行分析,汇总出系统的一些研究特性,接着对开发此系统采用的技术Java以及一些数据库MySQL等进行对比分析,对软件进行安装然后对系统架构进行搭建,在完成搭建后是对系统的功能模块以及系统的一些数据流图和用例图等进行分析,确保整个系统功能的完整性,在整体设计中最为核心是对数据库的逻辑和物理表进行设计,确保底层的基建的稳定性,然后是对系统的代码进行编写,对系统模块进行实现描述,完成系统开发。
2开发技术
2.1 Java技术
在技术语言中Java是最容易掌握的开发语言,Java的语言特性决定了它非常的容易上手,Java其实是C语言的基础上演变而来的,但Java是面向对象的开发语言,对于开发者来说任何的事物都可以是对象[10],且通过对象之间的继承、变量的嵌套、调用等完成类之间的关联。Java这类语言是基于跨平台的优势的,且通过安装JDK进行环境变量的搭建,Java也是基于多线程开发的,因此从开发性能的角度来说优势非常的明显[11]。
2.2 MySQL技术
在网站系统开发中使用频率最高的就是MySQL的数据库,MySQL数据库的操作非常的简单,在服务器的集成安装也很简单,MySQL跟Java一样也是开源免费,因此版本的迭代非常的快,但软件也非常的稳定[12]。在MySQL中主要包含表结构、函数、触发器、视图等组成,在底层中依旧可以通过函数和触发器等对业务的逻辑进行处理,针对于一些自动化的数据更新变化,可通过触发器来进行实现,代码操作逻辑相对应底层执行效率依旧会慢一些,因此复杂的大型的数据处理使用函数和触发器的频率更高[13]。在数据库表中可通过建立主键、普通字段、外键、索引等来进行设计。
2.3 Mybatis架构
Mybatis是继hibernate之后的又一大orm架构,Mybatis的出现让代码层的逻辑更为清晰,通过Mybatis可让业务层的代码与增删改查的一些数据库SQL语句分离[14],Mybatis的mapper层代码基本是在src层,而xml配置则基本在resource层,因此在maven进行打包时可通过scan扫描的形式将代码进行处理,注入到项目中,在xml中都为SQL的标签架构组织组成,通过一些SQL的片段或者是结合一些where标签,if else标签来进行动态化的判断,让SQL语句具有一定的动态判断能力,在SQL中执行完成后可利用Mybatis的逆向封装的能力自动组装到resultmap结果中[15],Mybatis的传参可以是对象也可以是list,在xml中都可自行进行处理。
3系统分析
3.1 可行性分析
技术可行性:在本次系统中采用SSM架构进行开发,结合MVC的设计模式,前端采用JSP进行设计,存储底层采用MySQL,系统基于B/S的访问模式,采用Spring作为本系统的底层搭建容器,采用Mybatis对数据底层进行存储交互。
操作可行性:在本网站的开发中首先要保证开发后的线上系统可满足实际的使用要求,首先系统要通过操作者登录的模式才可进行,且系统是基于B/S模式的因此输入浏览器url地址即可进行访问,在登录时要对用户的安全性以及用户所对应的角色进行分析,确保登录后不同的人员所对应的界面菜单也不同。
3.2 需求分析
系统主要分为管理员、教师、学生。
在此系统中主要包含管理员对学生信息的管理以及对教资负责老师的管理,对考场教室信息进行录入,可发布考试的一些信息,学生可进行查询和教资的报名,在报名后可进行自动化的审核,审核后则可自动化形成报名数据,以及进行考试的信息安排,考场自动化的安排等。如图3.1所示:
图3.1 系统总用例图
3.3 非功能需求分析
性能主要是分多角度进行分析的,包含开发者的角度来看待代码以及服务应用计算,而从体验用户的角度则主要是网络数据的响应的时间以及客户端的数据展示时间,而从测试者来看主要是数据库存储查询资源的合理性以及系统后期的功能的拓展。
4总体设计
4.1模块设计
系统主要完成学生、教师、管理员,主要包含的系统的核心模块为教资类型分类、考场管理、学生注册、学生信息管理、教资考试通知、考试统计,教资报名审核,老师管理等。如图4.1所示:
图4.1 系统总模块图
学生注册登录:在学生端可进行学生信息注册,注册后形成新的人员账号,可通过此账号进行登录操作。
考试考场管理:管理员可设置一些考场数据信息,可对考场教室信息进行录入操作,以及进行信息维护。
学生管理:管理员可对注册的学生信息进行管理。
教师管理:管理员可录入安排考试的教师信息,可设置教师的账号数据进行录入操作,以及对教师信息进行维护。
考试发布审核:教师端可对考试信息进行发布,可通过对教资考试的内容进行填写,然后通过提交发布,管理员端可对考试内容进行审核操作。
学生查询考试:学生可通过查询一些教资考试安排,可进行分页的数据查询,以及按照分类进行查询服务。
考试报名:学生可进行考试的报名,可对自己的报名数据进行查询操作。
报名审核:教师端可对报名进行审核操作,可对每门课的报名数据进行审核。
4.2数据库设计
教资考核报名后台信息实体:教资考试后台人员编号、教资考试后台人员账号、教资考试后台人员密码。如图4.2所示:
图4.2 教资报名信息E-R图
考场房间信息实体:主键、考场房间名、考场房间描述、考场房间地址。如图4.3所示:
图4.3 考场房间信息E-R图
教资负责老师信息实体:主键、教资负责老师姓名、教资负责老师电话、教资负责老师性别、教资负责老师负责信息、教资负责老师密码、教资负责老师住址。如图4.4所示:
图4.4 教资负责老师信息E-R图
报名考生信息实体:主键、报名考生姓名、报名考生电话、报名考生性别、报名考生账号、报名考生密码、报名考生班级、报名考生学院。如图4.5所示:
图4.5 报名考生信息E-R图
发布教资考核信息实体:主键、教资考核名称、教资考核内容、教资考核总时长、教资考核类型、教资考核发布人、教资考核日期、教资考核状态。如图4.6所示:
图4.6 发布教资考核E-R图
学生教资考核报名信息实体:主键、教资考试学生、教资考试考试、教资考试审核状态、教资考试考场安排、教资考试日期。如图4.7所示:
图4.7 发布教资考核E-R图
在数据结构设计中,主要是通过模块的一些业务分析,然后将具有同一类型的数据进行存储,做到一表一用,在设计过程中对每个表都要做到冗余的消除,保证数据查询的一致性,做到脏数据的不读取,且对表结构的字段长度和类型都要反复斟酌,在满足使用的前提下不要做到资源的浪费,可有利于快速提升访问数据库的效率。如图4.8所示:
教资考核报名的系统后台,设置后台人员编号、人员账号、人员密码。如表4.1所示,表名:jiaokao
表4.1 教资考核报名后台信息表 | |||||
序号 | 表字段列名 | 表字段条件 | 表字段初始 | 注释 | |
1 | fuzeuserid | Int(12) | 需设定开始值 | 考试后台人员编号 | |
2 | fuzeusername | varchar(76) | 需设定开始值 | 考试后台人员账号 | |
3 | fuzeuserpassword | varchar(76) | 需设定开始值 | 考试后台人员密码 | |
新增考场房间设置主键、考场房间名、考场房间描述、考场房间地址表。如表4.2所示,表名:kaochangxinxi
表4.2 考场房间信息表 | ||||
序号 | 表字段列名 | 表字段条件 | 表字段初始 | 注释 |
1 | Jiaosixsid | int(12) | 需设定开始值 | 主键 |
2 | Jiaosixsname | varchar(76) | 需设定开始值 | 考场房间名 |
3 | Jiaosixsphone | varchar(60) | 需设定开始值 | 考场房间描述 |
4 | Jiaosixssex | varchar(72) | 需设定开始值 | 考场房间地址 |
新增教资负责老师表设置姓名、电话、性别、信息、密码、住址。如表4.3所示,表名:jiaozitestlaoshi
表4.3 教资负责老师信息表
序号 | 表字段列名 | 表字段条件 | 表字段初始 | 注释 |
1 | dsfsffdeyid | int(12) | 需设定开始值 | 主键 |
2 | dsfsffdename | varchar(76) | 需设定开始值 | 考场房间名 |
3 | dsfsffdephone | varchar(60) | 需设定开始值 | 考场房间描述 |
4 | dsfsffdesex | varchar(72) | 需设定开始值 | 考场房间地址 |
5 | dsfsffdename | varchar(76) | 需设定开始值 | 教资负责老师密码 |
6 | dsfsffdeword | varchar(72) | 需设定开始值 | 教资负责老师密码 |
7 | Dsfsffdeshiwu | varchar(72) | 需设定开始值 | 教资负责老师住址 |
报名考生表设置主键、姓名、电话、性别、账号、密码、班级、学院。如表4.4所示,表名:zhucejiaozitesteng
表4.4 报名考生信息表
序号 | 表字段列名 | 表字段条件 | 表字段初始 | 注释 |
1 | baikaoid | int(12) | 需设定开始值 | 主键 |
2 | baikaoname | varchar(76) | 需设定开始值 | 报名考生姓名 |
3 | baikaophone | varchar(60) | 需设定开始值 | 报名考生电话 |
4 | baikaoesex | varchar(72) | 需设定开始值 | 报名考生性别 |
5 | baikaoname | varchar(76) | 需设定开始值 | 报名考生账号 |
6 | baikaoword | varchar(72) | 需设定开始值 | 报名考生密码 |
7 | Baikaobanji | varchar(72) | 需设定开始值 | 报名考生班级 |
8 | Baikaoxueyuan | varchar(72) | 需设定开始值 | 报名考生学院 |
发布教资考核信息表设置主键、考核名称、考核内容、考核总时长、考核类型、考核发布人、考核日期、考核状态。如表4.5所示,表名:kaoheshi
表4.5 发布教资考核信息表
序号 | 表字段列名 | 表字段条件 | 表字段初始 | 注释 |
1 | kaoheshiid | int(12) | 需设定开始值 | 主键 |
2 | kaoheshiname | varchar(76) | 需设定开始值 | 教资考核名称 |
3 | kaoheshiontent | varchar(50) | 需设定开始值 | 教资考核内容 |
4 | Kaoheshioshcd | varchar(50) | 需设定开始值 | 教资考核总时长 |
5 | Kaoheshitype | int(12) | 需设定开始值 | 教资考核类型 |
6 | laosigren | int(12) | 需设定开始值 | 教资考核发布人 |
7 | kaoheshirq | varchar(18) | 需设定开始值 | 教资考核日期 |
8 | Status | int(12) | 需设定开始值 | 教资考核状态 |
学生教资考核报名信息主键、考试学生、考试审核状态、考场安排、考试日期。如表4.6所示,表名:xuesnegjiaozitestbaomin
表4.6 学生教资考核报名信息表
序号 | 表字段列名 | 表字段条件 | 表字段初始 | 注释 |
1 | sheqndid | Int(12) | 需设定开始值 | 主键 |
2 | sheqndstuid | Int(12) | 需设定开始值 | 教资考试学生(外键) |
3 | sheqndjiid | Int(12) | 需设定开始值 | 教资考试考试(外键) |
4 | sheqndStatus | Int(12) | 需设定开始值 | 教资考试审核状态 |
5 | Kaochangid | varchar(76) | 需设定开始值 | 考试考场安排(外键) |
6 | sheqndriqi | Date | 需设定开始值 | 教资考试日期 |
5系统实现
5.1教师信息管理
管理员可对教师信息进行录入,通过输入教师信息、电话、地址等个人信息完成信息登录,可设置账号进行登录操作,在界面中通过input的输入框进行值的绑定,通过submit出发提交按钮,将数值通过json进行传递保存,在后台匹配到post的url后进行存储。如图5.1所示:
图5.1 教师信息管理页面
5.2考试科目信息管理
在对考试科目进行查询时,可通过showdatalist对考试科目数据进行获取,通过对科目名称、描述、等展示,执行selectbypage进行数据检索,通过select*from表格where 条件limit进行查询操作,Limit主要为分页分组操作。如图5.2所示:
图5.2 考试科目信息管理页面
新增考试科目核心代码如下:
@RequestMapUrl(value = "/add" )
private String add(Jiaozitesttype jiaozitesttype,Moxing moxing) throws Errorchuli {
jiaozitesttypeService.add(jiaozitesttype);
return "redirect:/jiaozitesttype/showjiaozitesttype";
}
@RequestMapUrl(value = "/addpage" )
private String addpage(Moxing moxing) throws Errorchuli {
return "admin/addjiaozitesttype";
}
5.3 学生信息管理
在对考试注册报名学生进行查询时,可通过showdatalist对考试学生展示,包含姓名、电话、班级、学院等展示,执行selectbypage进行数据检索,通过select*from表格where条件limit进行查询操作,Limit主要为分页分组操作。如图5.3所示:
图5.3 学生信息管理页面
5.4 教资考试管理
管理员可对教资考试信息进行录入,通过输入考试名称、所属分类、考试时长等,在界面中通过input的输入框进行值的绑定,通过submit出发提交按钮,将数值通过json进行传递保存,在后台匹配到post的url后进行存储。如图5.4所示:
图5.4 教资考试管理页面
新增考试信息核心代码如下:
@RequestMapUrl(value = "/add")
private String add(Jiaozitest jiaozitest, Moxing moxing, HttpServletRequest request) throws Errorchuli {
HttpFuwusess fuwusess = request.getFuwusess();
Integer tuserid = (Integer) fuwusess.getAttribute("userId");
jiaozitest.setGuanliid(tuserid);
Date currentTime = new Date();
Riqizhaunhuan formatter = new Riqizhaunhuan("yyyy-MM-dd");
String dateriqi = formatter.format(currentTime);
jiaozitest.setRiqi(dateriqi);
jiaozitest.setStatus(0);//0待审核 1审核通过 2 审核驳回
// jiaozitest.setBz("报名顺序");//先到先得报名 2审核报名
jiaozitestService.add(jiaozitest);
return "redirect:/jiaozitest/showjiaozitest";
}
5.5 学生报名管理
在学生端可进行报名的数据考试信息查询,在时间段区间内进行考试报名,可点击进行报名新增,通过获取报考人userid以及jiaozitestid进行新增,设置状态status为待审核。如图5.5所示:
图5.5 学生报名管理页面
新增学生报名核心代码如下:
@RequestMapUrl(value = "/add")
private String add(int id, Moxing moxing, HttpServletRequest request) throws Errorchuli {
HttpFuwusess fuwusess = request.getFuwusess();
Integer tuserid = (Integer) fuwusess.getAttribute("userId");
Application application = new Application();
if (applicationService.findByxinx(tuserid, id) > 0) {
moxing.addAttribute("message", "您已报名此考试,不可重复报名");
return "error";
}
application.setXsid(tuserid);
application.setJiaozitestid(id);
Date currentTime = new Date();
Riqizhaunhuan formatter = new Riqizhaunhuan("yyyy-MM-dd");
String dateriqi = formatter.format(currentTime);
application.setRiqi(dateriqi);
Jiaozitest jiaozitest = jiaozitestService.findById(id);
application.setStatus(0);//0待审核 1审核通过 2 审核驳回
applicationService.add(application);
return "redirect:/application/showapplicationxuesheng";
}
5.6 学生报名记录
在对考生报名进行查询时,可通过showdatalist对学生信息、报考日期、考场信息、准考证等展示,执行selectbypage进行数据检索,通过select*from表格where条件limit进行查询操作,在界面中可通过foreach进行循环展示数据。如图5.6所示:
图5.6 学生报名查询页面
6系统测试
6.1测试方法
在系统的测试中首先是对界面的一些兼容性进行测试,不同的浏览器对js的编译效果不同,有些在jsp中嵌入的js并不能起到一定的作用,在用户交互中要对测试的录入的数据的长度、格式、类型、以及是否为空等进行验证,在接口端要对method的提交方法以及是否加密操作,是否参数可为空等进行测试,要对系统进行多用户的并发测试验证,确保在多用户时可同时使用,且操作同一表时不存在脏数据的处理,在服务器测试时要对是否部署简单,是否有乱码生成等进行测试。