基于SSH的ACMOnlineJudge评测系统的设计与实现(AJAX,MySQL)
基于SSH的ACMOnlineJudge评测系统的设计与实现(AJAX,MySQL)(任务书,开题报告,毕业论文14500字,外文翻译,程序代码,MySQL数据库,答辩PPT)
基于JavaWeb技术的ACMOnlineJudge评测系统是基于软件工程的黑盒测试理论,是以Java、SSH框架,AJAX和数据库技术为基础搭建起来的一套可以对多种语言的源代码进行自动编译、测试、分析及评判的系统。
采用框架技术构建Web应用系统,可以有效地提高模块的可重用性和系统的稳定性。研究了Struts2、Spring2、Hibernate3三种框架技术以及将三者集成的J2EE框架技术,并运用该框架技术构建ACM程序设计在线评判系统。系统中使用了AJAX和JSON,大量减少了客户端和服务器端传输的数据量,节约了带宽,提高了响应速度,也提高了在线评测系统的并发能力。介绍了ACM程序设计在线评判系统设计思想,并阐述了系统总体架构以及表现层的设计与实现。实践表明,运用新型J2EE框架技术可以提高系统开发的效率,增强系统的可维护性和稳定性。
本论文的主要目标是使用 JavaEE、数据库、AJAX 、SSH框架等技术建立一个可用的、功能基本完善的 OJ 系统,可以实现源代码的存储、自动编译、自动评判和统计等功能 。
系统要为用户实现如下功能:
[资料来源:www.doc163.com]
(1) 注册:新用户注册功能。任何人通过提交给系统学号、姓名、和密码在系统中注册成为新用户,以后就可以使用提交的学号、密码登录系统,以便于管理和统计。
(2) 登录:为系统中注册的用户提供登录功能,用户只要填入学号和密码,登录后系统在用户浏览器中写入 Cookie,以记住用户的登录状态,这样用户就不用每次都键入学号和密码。
(3) 登出:用户可以通过登出系统清除登录时写在浏览器中的 Cookie。
(4) 权限管理:系统应该可以实现基本的权限管理,比如每个用户只能看到自己的代码或其他和自己相关的信息而不能看到其他用户的代码或相关信息。
(5) 做题排名:能够综合分析系统内各用户在本 OJ 上的做题情况,分别优劣。
(6) 题目管理:题目管理是用来管理本系统中所有题目的功能模块,应该可以完成题目的浏览,显示等功能。这样用户就可以通过这个功能查看系统中的题目,并选择要做的题目。
(7) 提交答案:这个功能让用户可以向系统中提交自己为特定题目编写的解决方案源代码。
(8) 评测结果显示:显示用户提交的解决方案是否正确,如果正确则显示运行时间,使用内存等信息,如果错误,则需要显示是何种错误,如超时、超内存、运行时错误等内容。
[来源:http://www.doc163.com]
(9) 比赛功能:比赛的功能是一个比较有用的功能组,要做到可以正确地控制比赛时间,能够正确及时地计算比赛的实时结果(即排名)。
后台评测单元要实现如下功能:
(1) 对于用户提交的不同语言编写的源代码可以自动进行编译。
(2) 对编译的程序自动运行,并进行评测。如果程序是正确的,并且满足题目的时空要求,则测量程序运行使用的时间、使用的内存空间;如果程序不正确,则测量程序出错的原因,包括超时、超内存、运行期错误、浮点计算错误、指针访问越界和答案格式错误等。
(3) 要能够将各种错误信息准确地存储到数据库当中。
开发环境:Myeclipse
Web服务器:Tomcat
数据库:MySQL
[资料来源:Doc163.com]
目 录
第一章 绪论 1
1.1 项目概述 1
1.2 课题背景和意义 1
1.3 国内外发展状况 1
1.4 论文结构 2
第二章 主要技术介绍 3
2.1 SSH框架 3
2.2 AJAX 5
2.3 JQuery 6
2.4 JSON 7
2.5 开发工具 8
第三章 需求分析 9
3.1 需求分析 9
3.2 功能结构 10
第四章 系统设计与实现 13
4.1 系统结构 13
4.2 系统数据库设计 14
4.3 评判核心的设计与实现 21
4.4 系统服务器端的设计与实现 23
4.5 前台页面的设计与实现 25
[资料来源:http://Doc163.com]
第五章 总结与展望 30
5.1 总结 30
5.2 展望 30
参考文献 31
附 录 32
外文资料
中文译文
致 谢
[版权所有:http://DOC163.com]
上一篇:基于JavaEE的小商品批发销售系统的设计与实现(JSP,MySQL)(含录像)
下一篇:广告公司OA办公系统的设计与实现(MVC,Servlet,Javabeans,MySQL)