当前位置:文档之家› 基于java的在线考试系统_毕业设计论文

基于java的在线考试系统_毕业设计论文

本科生毕业设计报告课题:基于java的在线考试系统在线考试系统与传统考试相比,可以实现考务工作的全自动化管理,并有效地利用校园网的软硬件资源,实现考试的客观性和公证性;自动化组卷、阅卷、判分的流程更是大大的减轻教师的工作强度。

在线考试系统旨在实现考试的无纸化管理,基于计算机和网络技术进行在线考试系统的使用,方便校方对考试的管理。

本程序是基于eclipse的在线考试系统,利用MVC架构编写,将功能分为3个模块,分别是视图,模型和控制器。

将数据分为3个层次,分别为UI层,业务层,实体数据层,各层之间模块独立化,便于数据管理,易于系统维护关键词:Eclipse,MVC架构,Java语言,三层结构。

AbstractCompared with the traditional test, online examination can realize the automation management work of the thesis, and effective use of the software and hardware of the campus network resources, realizing the objectivity of the exam and real; Automation group rolls, scoring, the process is the scores were greatly reduce teachers working strength. On-line examination system designed to achieve examination of the paperless management, based on the computer and network technology online examination system use, convenient to school examination management.The program is based on the eclipse of the online examination system, with the MVC framework to write, will function is divided into three modules, respectively is the view, model and the controller. Data is divided into three levels, respectively UI layer, business layer, the entity data layer, between each layer DuLiHua module, facilitate data management, and is easy to maintain the system.Keywords: Eclipse, MVC framework, Java language,the Three-tier Structure1. 序言 (1)1.1 系统描述..................................................................... 错误!未定义书签。

1.2 结构框图 (1)2. 所用开发工具简介 (2)2.1Eclipse简介 (2)2.2 Java 简介 (2)2.3 Java语言在Eclipse中的应用 (3)3. 系统总体设计 (4)3.1 系统需求分析 (4)3.2 系统概要设计 (4)3.2.1 系统结构设计 (4)3.2.2 Swing设计 (5)3.3 系统详细设计 (5)3.3.1 MVC架构 (5)3.3.2对象依赖注入(IOC) (6)3.3.3简单工厂方法 (6)4. 系统应用程序设计 (8)4.1 用户层界面的实现 (8)4.1.1 布局的实现 (9)4.1.2 welcomeWindow的实现 (9)4.1.3 loginFrame的实现 (10)4.1.4 menuFrom的实现................................................ 错误!未定义书签。

4.1.5 examFrame的实现 .............................................. 错误!未定义书签。

4.1.6 clientContext的实现............................................ 错误!未定义书签。

4.2 业务层界面的实现................................................ 错误!未定义书签。

4.2.1 ExamService的实现............................................ 错误!未定义书签。

4.2.2 用户登录的实现 ................................................. 错误!未定义书签。

4.2.3 开始考试的实现 ................................................. 错误!未定义书签。

4.2.4 获得考卷的实现 (26)4.2.5 保存用户答案的实现 (27)4.2.6 判分的实现 (27)4.3 数据层的实现 (27)4.3.1 线性表HashMap (27)4.3.2 Users集合的实现 (27)4.3.3 Questions集合的实现 (28)致谢 (29)参考文献 .............................................................................................. 错误!未定义书签。

1. 序言1.1 系统描述在线考试系统主要是学生通过客户机登陆自己的账号,然后完成课程科目的考试,提交,判分的过程。

系统主要分成两个部分,分别是服务器端和客户端,两者通过线程的连接来完成考试的各项功能。

在服务器端,服务器先启动,读取配置文件,然后将试卷和学生的信息,包括学号,姓名,密码,读取到服务器中。

这些信息的读取,会被封装在其他的类中,等待客户端发送数据连接请求,一旦发现有请求,就创建一个服务线程与之保持连接,等待考试完成的数据请求发送过来,再断开连接。

过程中服务器是一直处于监听客户端请求连接的运行状态。

客户端部分,为了方便操作,应用到图形界面swing的技术,这里一共有三个部分的界面,第一个就是学生登录的界面,学生要输入学号和密码登录服务器;其次是学生选择考试科目的界面,要注意先将前面一个窗口销毁,然后再创建新的窗口;最后是学生考试界面的窗口,功能较多,设计也稍显复杂。

最后用户点击交卷完成考试过程,并且显示得分,最后关闭窗口,服务器同时要断开连接,线程结束。

1.2 结构框图图12. 所用开发工具简介2.1 Eclipse简介Eclipse 是一个开放源代码的、基于Java 的可扩展开发平台。

就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

幸运的是,Eclipse 附带了一个标准的插件集,包括Java 开发工具(Java Development Tools,JDT)。

Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展Eclipse 的软件开发人员,因为它允许他们构建与Eclipse 环境无缝集成的工具。

由于Eclipse 中的每样东西都是插件,对于给Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

2.2 JA V A简介Java是一种简单的,跨平台的,面向对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。

当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。

Java 编程语言的风格十分接近C、C++语言。

Java是一个纯的面向对象的程序设计语言,它继承了C++ 语言面向对象技术的核心,多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。

Java具有以下鲜明特点:1.平台无关性平台无关性是指Java能运行于不同的平台。

Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口之间。

使用Java编写的程序能在世界范围内共享。

2.安全性Java对程序提供了安全管理器,防止程序的非法访问。

3.面向对象Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。

类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。

程序员只需把主要精力用在类和接口的设计和应用上。

Java提供了众多的一般对象的类,通过继承即可使用父类的方法。

4.分布式Java建立在扩展TCP/IP网络平台上。

库函数提供了用HTTP和FTP协议传送和接受信息的方法。

这使得程序员使用网络上的文件和使用本机文件一样容易。

5.健壮性Java致力于检查程序在编译和运行时的错误。

类型检查帮助检查出许多开发早期出现的错误。

Java自己操纵内存减少了内存出错的可能性。

Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。

并且Java还提供了Null指针检测、数组边界检测、异常出口、Byte code校验等功能。

6.动态java程序的基本组成单元就是类,有些类是自己编写的,有些是从类库中引入的,而类又是运行时动态装载的,这就使得Java可以在分部环境中动态的维护程序及分类,而不像C++那样,没档期类库升级以后,如果想让程序具有新类库提供的功能,就需要修改程序,重新编译。

2.3 Java语言在Eclipse中的应用Eclipse是Java语言的开发工具,通过Eclipse工具可以实现Java面向对象的思想,Java中的接口用于实际编程中,定义一定的接口,并用Java实现类来实现特定的接口。

具体步骤:1、安装JDK,并在高级设置里面配置环境变量,打开Eclipse开发工具,并在Eclipse里面讲安装好的JDK配置进去。

2、在Eclipse中新建一个Java Project,在src目录下新建包。

相关主题