随着家长对孩子教育方面的不断重视,教育在人民心中的地位越来越重,老师们的负担与压力也越来越重。如何减轻老师的负担及压力,已经成为广大学校校长需要解决的头号难题。在教育工作中,为学生考试出试卷和批改试卷是老师们最头痛的,不仅消耗大量的时间,而且消耗大量的精力体力。因此,考试过程由人工操作转向计算机操作是必然的结果。

在以往的教学中,老师出试卷大多由手工出卷,这样生成的试卷往往会有知识点分布太集中、难易程度不当、分值分布不均等一些缺点;这样,既增加了老师的负担,也没有达到很好考查学生学习的真实水平,造成教学上的失误。基于以上的原因,有很多从事软件开发的人员在试卷自动生成方面做了很大的研究。本系统希望利用计算机强大的数据处理功能,由计算机逐步代替传统的人工出卷,并且规范出卷程序,使出卷工作更加科学化、现代化,使教育工作更上一层楼。
本系统采用idea/eclipse软件开发,用SpringMvc框架+mysql数据库架构设计完成,主要编程语言为java和mysql。 JDK版本是1.8,web服务器是tomcat,开发框架是SSM(Spring+SpringMVC+MyBatis),非常适合作为计算机毕业设计参考资料进行学习,通过这次的毕业设计,学会如何编写一个java的程序,以及制作该系统的整个流程,制作该系统的步骤,为以后就业和工作提前打下一定的基础.在IntelliJ IDEA的设计过程中,使用mybatis进行数据库持久化,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。

通过对本系统的功能及E-R图进行分析,得出各个实体所对应的关系模型如下。
(1) 用户信息(用户编号,用户名,密码,密码提示问题,答案,真实姓名,年龄,性别,联系电话,用户权限,省份证号,注册日期)。
(2) 考试科目(课目ID,课程名称)。
(3) 试题信息(试题ID,考试科目,正确答案,题目分数,科目ID)。
(4) 试题答案信息(试题ID,A选项,B选项,C选项,D选项)。
(5) 答题信息暂存(题号,题目,答案,得分,考生号)。
(6) 考试结果信息(学生编号,起始时间,截止时间,考试科目,学生成绩)。

本系统分为考生模块和管理员模块两部分,不同的模块包含不同的功能模块,下面是各功能模块的详细介绍。
(1) 学生的功能
学生主要完成在系统选题模块中在系统自动出完题后完成考试,在没用登陆过之前完成注册以及注册完后,因忘记密码而找回密码等功能。
系统选题:在此当学生成功登录系统后,开始做题,系统自动从题库中抽取相应的试题来供学生作答。
系统改卷:当学生提交试卷之后,系统会自动的将学生的答案和试题的正确答案做对比,并给出相应的分值。
用户注册:主要完成学生在首次登陆该系统时完成注册功能。
密码找回:主要针对当考生忘记自己的密码时,系统通过提问问题来找回密码的功能。
退出:退出当前的登录状态。
(2) 管理员的功能
教职工主要完成对学生考试科目的增加、删除和对各科目试题的增、删、改操作,以及对学生分数的查询和对数据库的维护等功能。
试题管理:在此可以完成对试题的增加、删除、修改,以及等考试科目的增加、删除的功能。
成绩查询:主要对考试考试完之后对分数的统计功能。
数据库管理:主要是对数据库的初始化、数据库的备份以及对数据库的还原等操作的功能。
模拟试题:主要提供对自己所教课程的模拟试题信息的浏览、查看、添加、删除及修改功能。
退出:退出当前的登录状态。