大学生竞赛管理系统-JAVA【数据库设计、源码、开题报告】
第一章 概述
1.1研究背景
1.首先提升形象:这是每个学校建设系统的目的之一。当今的网络信息年代,连一个操作系统都不从有过,将会跟不上时代的步伐。
2.加强大学生竞赛服务:大学生竞赛管理行业性质要求您定期提供资料给管理员,或者随时接受用户的建议。如果用户需要,可以通过系统进行管理。
大学生竞赛管理系统能够通过互联网得到广泛的、全面的宣传,让尽可能多的用户了解和熟知大学生竞赛管理系统的便捷高效,不仅为用户提供了服务,而且也推广了自己,让更多的用户了解大学生竞赛管理系统。
1.2 开发意义
计算机技术在管理中成为人们的重要工具。可以有效快捷的解决想要获取的信息,提高工作效率。
1.3 研究现状
1.4 研究内容
本系统主要包括管理员,用户两个用户角色;主要包括首页,个人中心,用户管理,竞赛类型管理,竞赛信息管理,参赛申请管理,成绩信息管理,获奖信息管理,论坛讨论,系统管理等功能的管理系统。
1.5 论文结构
本章主要是对系统可行性、系统性能、还有系统功能需求进行分析。
(5)系统的实现
主要对首页,个人中心,用户管理,竞赛类型管理,竞赛信息管理,参赛申请管理,成绩信息管理,获奖信息管理,论坛讨论,系统管理的实现。
(6)系统的测试
在系统编码实现后,就需要对系统进行检测,检测的方法有黑盒测试和白盒测试两种方式,本系统采用的是黑白盒测试方法对不同组的数据进行功能模块测试。
(7) 总结与心得体会
在论文最后结束章节总结了开发这个系统和撰写论文时候自己的总结、感想、包括致谢。
第二章 开发技术介绍
此次管理系统的关键技术和架构由B/S结构、java和mysql数据库,是本系统的关键开发技术,对系统的整体、数据库、功能模块、系统页面以及系统程序等设计进行了详细的研究与规划。
2.1 系统开发平台
2.2 平台开发相关技术
2.2.1 Java语言简介
Java是由SUN公司推出,该公司于2010年被oracle公司收购。Java本是印度尼西亚的一个叫做爪洼岛的英文名称,也因此得来java是一杯正冒着热气咖啡的标识。Java语言在移动互联网的大背景下具备了显著的优势和广阔的前景,它是面向对象的,分布式的,动态的,具有平台无关性、安全性、健壮性。Java语言的基本语句语法和C++一样,但是它面向对象的技术更加彻底,因为Java要求将所有的内容都必须封装成类,把类作为程序的基本单位。由于不允许类外有变量、方法。 Java语言的分布式体现在数据分布和操作分布,它是面向网络的语言,可以处理TCP/IP协议,它也支持客户机/服务器的计算模式。Java语言的动态性是指类在运行时是动态安装的,使得Java可以动态的维护程序。Java不支持指针,对内存访问的所有操作都是通过对象实例化实现的,这样就避免了指针操作中易产生的错误,同时也预防了病毒对系统的破坏和威胁。
Java语言的编程风格与C语言非常接近,它继承了C++面向对象技术的核心,它面世之后发展迅速,非常流行,对高级C语言形成了很大的冲击。业内人士称之为“一次编译、到处执行”。当然java也有缺点,在每次执行编译后,字节码都需要消耗一定的时间,在某些程度上降低了性能。但是这并不影响java成为此次设计语言的选择。Java语言简单易学,使用它的编程时间短,功能性强,开发者学习起来更简便、更快。Java的主要特性有以下几个:
1.面向对象
面向对象有四个特点:封装、继承、多态、抽象。抽象是指忽略一个问题中的次要部分,关注主要部分。多态是指对同一种消息做出的不同反应。继承是指在原有的父类方法基础上增加自己独有的方法,而不改变原来父类。
2.平台无关性、
Java编译出来的是字节码,直接由虚拟机执行。在任何平台上,只要有Java虚拟机,Java代码都能运行。
3.可靠性和安全性
Java对内存的访问都必须通过对象的实例变量来实现,避免了指针中出现的错误。
4. 多线程
Java提供了多线程功能,利用编程实现同一时间同时工作的功能。
2.2.2 mysql数据库介绍
数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。简单来讲,存储粮食的仓库叫粮仓存储数据的仓库就叫数据库。数据库在软件项目中扮演着操作管理数据的角色同时还能够保证数据的独立性、一致性和安全性,并为系统访问数据提供有效方式不仅如此数据库还能大大减少程序员开发程序时间。在日常能够接触实用的一般有两类数据库,一类是以(Oracle,DB2,SQL Server,MySQL )为代表的关系型数据库和以(NoSql、MongeDB)为代表的非关系型数据库,两类数据库各有各的优缺点。其中非关系型数据库又分为网络数据库和层级数据库。-网络数据库是指在计算机网络系统中应用数据库技术然后借助网络技术将存储于数据库中的大量信息及时发布出去;在成熟的数据库技术的帮助下,计算机网络实现了对网络中的各种数据的有效管理,用户与网络中的数据库数据交互也借此得以进行。作为最成功的典型层次模型数据库系统,IMS是最早研制成功的数据库系统。1970年由埃德加•科德于首先提出的关系模型融合了“科德十二定律”。现如今即使很多人仍旧不看好这个模型,但它依旧是数据存储的传统标准。关系数据结构、关系操作集合、关系完整性约束构成了关系模型。作为数据库另外一种区分方式的存储介质被大家分为磁盘和内存这 两种。例如:关系型数据库就存储在磁盘中,非关系型数据库则存储在内存中。典型的关系型数据库有:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL、SQLite。小型关系型数据库:Microsoft Access,SQLite;中型关系型数据库:SQL Server,Mysql;大型关系型数据库:Oracle,DB2。
大家常用的其他关系形数据库系统大多是MySQL AB公司开发的,其中MySQL也是由这家开发的,所应用的分布式数据库管理系统是客户机/服务器体系结构得益于此结构,而且用这个系统建造的数据库具有很强的适用性,用C和C++编写的系统让他拥有很强的适用性所以他可以在大部分操作系统上使用并能和php结合。不同的API函数针对不同的语言(C,C++,JAVA等)来处理不同数据;为了更好地支持多CPU多线程通过使用核心线程来实现;提供的存储机制分为事务和非事务存储机制;MySQL采用双重许可,不管是从MySQL AB公司获得正式的商业许可又或是许可条款下以免费软件或开放源码软件的方式使用MySQL软件都是被允许的。
MySQL作为数据库拥有很多优点,其中由于是开放源码,所以使用成本特别低,而它体积小的特点决定了速度快的特性。因此,My Sql具有开放性,多线程支持多种API,可跨数据库连接,国际化,数据库体积巨大等特点。简单的来说 ,MySql是一个开放的、快速的、多线程的、多用户的数据库服务器。
选用MySQL作为数据库的其中一个原因就是支持多线程,支持多线程的特点为利用系统资源提供了便捷并因此大大提高了系统运行速度和效率,而且连接数据库的方式多样包括但不局限于TCP/IP、ODBC和JDBC等途径;但是没有东西是完美无缺的,即便MySQL也如此,虽说它有着众多优点但其功能不够强大,规模也相对较小,无法应对大型数据哭的处理。但是对于本系统来说,选用MySQL作为数据库,其功能性能已绰绰有余,如果要进行二次开发的数据库表结构空间的扩展也是完全可行的。综上所述,MySQL是作为本系统数据库的最优选择。
2.2.3 MySQL环境配置
修改MySQL数据库的root密码。用cmd进入命令行模式输入如下命令:
MySQLadmin -u root -p password 123
回车出现Enter password: ,这是要输入原密码. 刚安装时密码为空,所以直接回车,此时MySQL 中账号 root 的密码被改为 123 安装完毕。
2.2.4 B/S架构
B/S结构是目前使用最广泛的结构模式,它不但能让系统的开发更加的简单,易操作,而且还能够对其进行维护。在使用B/S结构时只要在计算机中安装好数据库和一些很常用的浏览器就行了。数据库和浏览器就会进行信息连接,能实现很多功能,此结构通过能上网的电脑是可以直接进行使用,而且在使用中极大的减少了工作的维护。基于B/S的软件数据库之间都是独立使用的,因此是非常可靠的。因为基于此结构可以清晰的看到系统正在处理的所有业务,还能够及时的让管理人员根据当时的实际情况做出相应的对策,这样能避免用户的损失。B/S结构的管理模式是集中式的,用户使用此系统在生成数据后就可以将这此数据存储到系统的数据库中,方便以后使用满足人们的所有的需求。
图2-1 三层结构图
2.2.5 SSM框架
第三章 系统分析
3.1 系统设计的目标
本系统主要是针对线下管理方式中管理不便与效率低的缺点,将电子商务和计算机技术结合起来,开发出管理便捷,效率高的大学生竞赛管理系统。该系统操作简单方便,界面友好,容易管理和维护;而且对大学生竞赛管理具有较强的针对性,实用性和可操作性,可初步解决线下管理因各种因素限制,高成本等因素造成的一系列不便。
3.2 可行性分析
一个完整的系统,可行性分析是必须要有的,因为他关系到系统生存问题,对开发的意义进行分析,能否通过本系统来补充线下大学生竞赛管理模式中的缺限,去解决其中的不足等,通过对本系统,不仅能使工作量不断地减少,还能使工作和管理的效率更加高。所以开发该系统能实现更大的意义和价值,系统完成后,能否达到预期效果就要通过可行性分析,分析之后,决定此系统是否开发。该大学生竞赛管理系统的开发设计中,对技术、经济、操作方面进行了可行性分析;
3.2.1技术可行性
3.2.2操作可行性
3.2.3 经济可行性
大学生竞赛管理系统,该系统软件开发仅需要一台普通的计算机便可完成实现开发,其成本很低。另外,作为毕业设计作品来讲,开发成本基本上可以忽略不计,且该系统软件的投入使用,可以实现更加快速高效的大学生竞赛管理系统,同时还能实现对人力资源和管理资源的有效节约,该大学生竞赛管理系统在经济上完全可行。
3.3 系统现状分析
系统使用用户的数量直接决定了用户信息管理者的工作量,毫无疑问,管理者的工作量较大较繁琐。通过总结出系统当前对用户管理的工作状态得以下分析:
资源共享是网络的一大特点,没有共享就没有社交,网络也就失去了他应有的魅力,如果能够实现用户信息共享,无疑对于用户的发展存在不可或缺的帮助。
如今科学技术发展飞速,随着而来的就是技术更新,那势必会给软件更新带来挑战,因此,系统必须具备良好的开放性和可扩充性,为了不落后于时代,这是必备特色之一。
3.4性能需求分析
对系统的性能,从(功能、运行、界面、安全)等方面进行,下面我们逐一进行分析;
1. 系统的功能是否完整进行分析:系统的功能,能对应设计出原始代码和算法,以表格同文字的形式进行详细介绍个人信息保证功能完整;
2. 系统的运行是否通畅进行分析:系统的每个功能都有编写数据的关系和应对的代码,通过需求分析和可行性分析进行分析和显示系统的物理数据,保证其进行通畅;
3. 系统的界面设计进行分析:对系统中的软件进行处理与分析的方式是由不同代码来进行的;从而使界面容易操作。
3.5功能分析
考虑到实际生活中在大学生竞赛管理方面的需要以及对该系统认真的分析,将系统权限按管理员,用户这两类涉及用户划分。
管理员登陆后,主要模块包括首页,个人中心,用户管理,竞赛类型管理,竞赛信息管理,参赛申请管理,成绩信息管理,获奖信息管理,论坛讨论,系统管理等功能。管理员用例图如图3-1所示。
用户登陆后,主要模块包括首页,竞赛信息,获奖信息,论坛讨论,公告信息,个人中心,后台管理等功能。用户用例图如图3-2所示。
3.6系统设计规则与运行环境
软件系统的优劣很大程度上是由系统设计的完善与否决定的。世间万物都必须遵循生老病死的法则,这是大自然的规则不能违反,软件设计也一样需要遵循系统设计规则。因此,在设计过程中必须遵循系统设计规则。
简单性:为了扩大系统使用者的受众面,系统设计应该本着操作越简单约好的原则,这样不仅能提高系统的使用率更能够扩大系统使用面。。
针对性:一个系统针对性越强,所能提供的功能必然越完善,用户体验肯定更好,所以应该明确指定系统针对性。
实用性:实用永远是检验一个系统是否成功的唯一标准,使用的语言再高端,使用的结构再新颖但不能满足管理员和用户的要求那就是失败。
本系统是利用B/S结构来开发的,数据库在服务器上进行部署 Mysql即可,其他包括My Eclipse等常规开发程序。
第四章 系统设计
4.1系统设计思想
4.2功能结构
为了更好的去理清本系统整体思路,对该系统以结构图的形式表达出来,设计实现该大学生竞赛管理系统的功能结构图如下所示:
图4-1 系统总体结构图
4.3数据库设计与实现
在每一个系统中数据库有着非常重要的作用,数据库的设计得好将会增加系统的效率以及系统各逻辑功能的实现。所以数据库的设计我们要从系统的实际需要出发,才能使其更为完美的符合系统功能的实现。
4.3.1 数据库设计规范
数据可设计要遵循职责分离原则,即在设计时应该要考虑系统独立性,即每个系统之间互不干预不能混乱数据表和系统关系。
数据库命名也要遵循一定规范,否则容易混淆,数据库字段名要尽量做到与表名类似,多使用小写英文字母和下划线来命名并尽量使用简单单词。
4.3.2 数据库E/R图
ER图是由实体及其关系构成的图,通过E/R图可以清楚地描述系统涉及到的实体之间的相互关系。在系统中对一些主要的几个关键实体如下图:
4.3.3 数据库表
数据库概念结构设计后,可以数据库概念转化实际的数据模型,这是一种数据库的逻辑结构,就是将概念结构与支持数据库管理系统的模型相符合。系统中使用到的主要数据表的具体展示部分如下所示。
表4-1:token表
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
userid |
bigint |
用户id |
|||
username |
varchar |
100 |
用户名 |
||
tablename |
varchar |
100 |
表名 |
||
role |
varchar |
100 |
角色 |
||
token |
varchar |
200 |
密码 |
||
addtime |
timestamp |
新增时间 |
CURRENT_TIMESTAMP |
||
expiratedtime |
timestamp |
过期时间 |
CURRENT_TIMESTAMP |
表4-2:公告信息
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
title |
varchar |
200 |
标题 |
||
introduction |
longtext |
4294967295 |
简介 |
||
picture |
varchar |
200 |
图片 |
||
content |
longtext |
4294967295 |
内容 |
表4-3:竞赛信息
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
jingsaimingcheng |
varchar |
200 |
竞赛名称 |
||
jingsaileixing |
varchar |
200 |
竞赛类型 |
||
jingsaifengmian |
varchar |
200 |
竞赛封面 |
||
jingsaishijian |
varchar |
200 |
竞赛时间 |
||
jingsaididian |
varchar |
200 |
竞赛地点 |
||
cansaiyaoqiu |
longtext |
4294967295 |
参赛要求 |
表4-4:竞赛类型
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
jingsaileixing |
varchar |
200 |
竞赛类型 |
表4-5:获奖信息
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
jingsaimingcheng |
varchar |
200 |
竞赛名称 |
||
jingsaileixing |
varchar |
200 |
竞赛类型 |
||
xingming |
varchar |
200 |
姓名 |
||
touxiang |
varchar |
200 |
头像 |
||
xueyuan |
varchar |
200 |
学院 |
||
jiangxiangmingcheng |
varchar |
200 |
奖项名称 |
||
huojiangshijian |
date |
获奖时间 |
表4-6:论坛讨论
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
title |
varchar |
200 |
帖子标题 |
||
content |
longtext |
4294967295 |
帖子内容 |
||
parentid |
bigint |
父节点id |
|||
userid |
bigint |
用户id |
|||
username |
varchar |
200 |
用户名 |
||
isdone |
varchar |
200 |
状态 |
表4-7:配置文件
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
name |
varchar |
100 |
配置参数名称 |
||
value |
varchar |
100 |
配置参数值 |
表4-8:成绩信息
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
jingsaimingcheng |
varchar |
200 |
竞赛名称 |
||
jingsaileixing |
varchar |
200 |
竞赛类型 |
||
yonghuming |
varchar |
200 |
用户名 |
||
xingming |
varchar |
200 |
姓名 |
||
chengji |
float |
成绩 |
|||
xueyuan |
varchar |
200 |
学院 |
||
fabushijian |
datetime |
发布时间 |
表4-9:参赛申请
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
jingsaimingcheng |
varchar |
200 |
竞赛名称 |
||
jingsaileixing |
varchar |
200 |
竞赛类型 |
||
shenqingneirong |
varchar |
200 |
申请内容 |
||
shenqingshijian |
datetime |
申请时间 |
|||
yonghuming |
varchar |
200 |
用户名 |
||
xingming |
varchar |
200 |
姓名 |
||
xueyuan |
varchar |
200 |
学院 |
||
shouji |
varchar |
200 |
手机 |
||
sfsh |
varchar |
200 |
是否审核 |
否 |
|
shhf |
longtext |
4294967295 |
审核回复 |
表4-10:用户
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
yonghuming |
varchar |
200 |
用户名 |
||
mima |
varchar |
200 |
密码 |
||
xingming |
varchar |
200 |
姓名 |
||
xingbie |
varchar |
200 |
性别 |
||
touxiang |
varchar |
200 |
头像 |
||
xueyuan |
varchar |
200 |
学院 |
||
zhuanye |
varchar |
200 |
专业 |
||
shouji |
varchar |
200 |
手机 |
表4-11:用户表
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
username |
varchar |
100 |
用户名 |
||
password |
varchar |
100 |
密码 |
||
role |
varchar |
100 |
角色 |
管理员 |
|
addtime |
timestamp |
新增时间 |
CURRENT_TIMESTAMP |
第五章 系统功能实现
5.1系统功能模块
大学生竞赛管理系统,在系统首页可以查看首页,竞赛信息,获奖信息,论坛讨论,公告信息,个人中心,后台管理等内容,并进行详细操作;如图5-1所示。
this.queryIndex = event.target.value;
this.dianyingxinxidianyingmingcheng = this.queryList[event.target.value].queryName;
layui.use(['layer', 'form', 'element', 'carousel', 'http', 'jquery'], function() {
var carousel = layui.carousel;
http.request('config/list', 'get', {
if (res.data.list.length > 0) {
res.data.list.forEach(element => {
img: http.baseurl + element.value
http.request('news/list', 'get', {
for(var i = 0; i<newsList.length; i++) {
let d = newsList[i].addtime.split(' ')
newsList[i].month = d[1] + '-' + d[2]
if (newsList.length > 0 && newsList.length <= 2) {
vue.leftNewsList = res.data.list
for (let i = 0; i <= 2; i++) {
leftNewsList.push(newsList[i]);
vue.leftNewsList = leftNewsList
if (newsList.length > 2 && newsList.length <= 8) {
for (let i = 3; i <= newsList.length; i++) {
rightNewsList.push(newsList[i]);
vue.rightNewsList = rightNewsList
options.pagination = {el:'null'}
new Swiper('#newsnews', options)
new Swiper('#new-list-6', sixSwiper)
var autoSortUrl = "dianyingxinxi/autoSort";
if(localStorage.getItem('userid')!=null) {
autoSortUrl = "dianyingxinxi/autoSort2";
http.request(autoSortUrl, 'get', {
vue.dianyingxinxiRecommend = res.data.list
options.pagination = {el:'null'}
new Swiper('#recommenddianyingxinxi', options)
var swiper = new Swiper('#recommend-five-swiperdianyingxinxi', {
autoplay: {"delay":3000,"disableOnInteraction":false},
for (i = 0; i < slides.length; i++) {
// slide.html(progress.toFixed(2)); //看清楚progress是怎么变化的
slide.transform('scale(' + (1.5 - Math.abs(progress) / 4) + ')');
setTransition: function(transition) {
for (var i = 0; i < this.slides.length; i++) {
navigation: {"nextEl":".swiper-button-next","prevEl":".swiper-button-prev"},
pagination: {"el":".swiper-pagination","clickable":true},
用户注册,在用户注册页面通过填写用户,密码,确认密码,姓名,学员,专业,手机等信息进行注册操作,如图5-2所示。
public R register(@RequestBody YonghuEntity yonghu){
//ValidatorUtils.validateEntity(yonghu);
Long uId = new Date().getTime();
竞赛信息,在竞赛信息页面可以查看竞赛名称,竞赛类型,竞赛时间,竞赛地点,参赛要求等内容,并进行申请操作,如图5-3所示。
个人中心,在个人中心页面通过填写用户名,密码,姓名,姓名,上传图片,学院,专业,手机等内容进行更新信息操作,并根据需要对我的发布进行详细操作;如图5-4所示。
http.request('config/list', 'get', {
if (res.data.list.length > 0) {
for (let item of res.data.list) {
if (item.name.indexOf('picture') >= 0 && item.value && item.value != ""&& item.value != null) {
jquery('#swiper-item').html(swiperItemHtml);
http.request('address/list', 'get', {
userid: localStorage.getItem('userid')
layout: ["prev","page","next"],
http.request('address/list', 'get', {
userid: localStorage.getItem('userid')
jquery('#btn-add').click(function(e) {
window.location.href = './add.html';
5.2后台登录模块
后台登录,管理员,用户进入系统前在登录页面根据要求填写账号,密码,选择角色等信息,点击登录进行登录操作,如图5-5所示。
this.$storage.set("loginTable", tableName);
this.$router.push({path:'/register'})
if (!this.rulesForm.username) {
this.$message.error("请输入用户名");
if (!this.rulesForm.password) {
for (let i = 0; i < menus.length; i++) {
if (menus[i].roleName == this.rulesForm.role) {
this.tableName = menus[i].tableName;
if (data && data.code === 0) {
this.$storage.set("Token", data.token);
this.$storage.set("role", this.rulesForm.role);
this.$storage.set("sessionTable", this.tableName);
this.$storage.set("adminName", this.rulesForm.username);
this.$router.replace({ path: "/index/" });
this.$message.error(data.msg);
5.2.1管理员功能
管理员登陆系统后,可以查看首页,个人中心,用户管理,竞赛类型管理,竞赛信息管理,参赛申请管理,成绩信息管理,获奖信息管理,论坛讨论,系统管理等功能,还能对每个功能逐一进行相应操作,如图5-6所示。
图5-6管理员功能界面图
用户管理,在用户管理页面可以对索引,用户名,姓名,性别,头像,学院,专业,手机等内容进行详情,修改,删除操作,如图5-7所示。
图5-7用户管理界面图
竞赛类型管理,在竞赛类型管理页面可以对索引,竞赛类型等内容进行修改和删除等操作,如图5-8所示。
图5-8竞赛类型管理界面图
竞赛信息管理,在竞赛信息管理页面可以对索引,竞赛名称,竞赛类型,竞赛封面,竞赛时间,竞赛地点等内容进行详情,修改和删除等操作,如图5-9所示。
图5-9竞赛信息管理界面图
参赛申请管理,在参赛申请管理页面可以对索引,竞赛名称,竞赛类型,申请内容,申请时间,用户名,姓名,学院,手机,审核回复,审核状态等内容进行详情,成绩,修改和删除等操作,如图5-10所示。
图5-10参赛申请管理界面图
成绩信息管理,在成绩信息管理页面可以对索引,竞赛名称,竞赛类型,用户名,姓名,成绩,学院,发布时间等内容进行详情,修改和删除等操作,如图5-11所示。
图5-11成绩信息管理界面图
获奖信息管理,在获奖信息管理页面可以对索引,竞赛名称,竞赛类型,姓名,头像,学院,奖项名称,获奖时间等内容进行详情,修改,删除操作,如图5-12所示。
图5-12获奖信息管理界面图
论坛讨论,在论坛讨论页面可以对索引,内容,用户名等内容进行删除操作,如图5-13所示。
图5-13论坛讨论界面图
系统管理,在轮播图管理页面可以对索引,名称,值等内容进行详情,修改等操作,还可以对公告信息进行详细操作;如图5-14所示。
图5-14系统管理界面图
5.2.2用户功能
用户登陆系统,可以查看首页,个人中心,参赛申请管理,成绩信息管理等功能,还能对每个功能逐一进行相应操作,如图5-15所示。
图5-15用户功能界面图
参赛申请管理,在参赛申请管理页面可以对索引,竞赛名称,竞赛类型,申请内容,申请时间,用户名,姓名,学院,手机,审核回复,审核状态等内容进行详情,删除等操作,如图5-17所示。
图5-17参赛申请管理界面图
第六章 系统测试与维护
6.1系统测试
系统测试是软件开发过程中最后一步,但也是不可或缺的重要的一步,没有人可以保证一次性编写完成的系统不会出错,而系统测试就是将自己开发的系统成为成品前的最后一步。在测试过程中需要进行严谨细致的测试,要尽可能全面地在不同情况下运行该系统,排除一切出现错误的可能。
系统测试不仅仅是发现系统潜在的BUG或错误,而更为重要的是为用户提供一个良好的体验和安全可使用的产品服务。而通过发现错误或潜在的问题,将有助于提升产品的竞争力,这也是软件测试的其中的重要目的之一。
软件测试的方法有好几种,但目前主要采用的是包括以功能为主要测试方向的黑盒测试以及以逻辑为主要测试方向的白盒测试,这是两种不同的测试方法,针对的测试侧重点不同,本课题根据实际需求情况,选择以功能为主要的黑盒测试方法,同时测试是要遵循一定的规则来执行的,一个测试要执行其执行的依据一般是由测试用例来规定的,而测试用例一般是依据需求或说明书来综合制定的,测试在硬件出厂前是十分重要的一个过程,本课题由于时间和精力的关系,选择以实现的功能作为测试要点来进行测试。具体测试过程如下:
测试用例1及测试过程:
登录:录入登录信息,账号,密码和权限,然后单击登录进行操作,会出现两种情况:一种情况是登录成功,进入用户相应的功能界面进行下一步操作;另一种情况是提示登录失败,系统会弹出一个对话框要求重新登录操作;
测试用例2及测试过程:
管理员登录:录入登录信息,管理员账号,密码和权限,然后单击登录进行操作,会出现两种情况:登录成功进入管理员具有权限的功能界面和提示登录失败。一种情况是登录成功,进入管理员界面进行下一步操作;另一种情况是提示登录失败,系统会弹出一个对话框要求重新登录操作;
6.2系统维护
为了清除系统在运行过程中发生的错误,必须定期的对系统进行完善和维护;这是为了使系统适应用户环境的变化,满足用户新提出的新要求。系统维护的任务是修复软件在运行过程中发现的错误,补充用户在使用过程中提出的新的功能需求。所以,为了保证计算机系统能够正常的运行,必须对系统进行定期检查。
维护内容有:
(1)病毒防范与系统安全:当今企事业单位里最严重的安全威胁就是--木马与黑客。这些都会严重影响到企业的正常工作和发展,会对单位造成难以估量的危害。所以,必须加强系统安全,定期查杀木马,以及对系统漏洞进行修补。
(2)数据维护。根据单位的需要对数据的需求有时候会发生变化,除了系统中的主要数据的定期更新外,还需根据单位需要进行变化调整,包括增加数据内容等等。除此之外,还必须对数据进行定期的备份等。
(3)代码维护。如果系统应用范围扩大,当前系统无法满足新的需求,那么必须大于系统中的代码进行必要的增加、修改、删除等等。
(4)硬件维护。主要就是指对主机以及外设的一些基本维护和管理,如对部件的包养清理,老化部件进行更换等,以此来保证大学生竞赛管理系统能够正常地工作。
第七章 总结与心得体会
7.1 总结
通过完成该大学生竞赛管理系统和本论文的撰写让我更加明白了软件开发过程中软件工程思想的重要性。在项目的前期由于对需求分析做的不够谨慎和明确,导致了后面在设计甚至编码时候造成了许多不必要的麻烦。由此在今后的学习和工作开发之中必须要牢牢把握住软件工程的设计思想和方法,这样可以进一步保证项目开发的健壮性和准确性。
本系统所实现的是一个大学生竞赛管理系统,该系统严格按照需求分析制作相关模块,并利用所学知识尽力完成,但是本人由于学识浅薄,无法真正做到让该程序可以投入市场使用,仅仅简单实现部分功能,希望日后还能改善。
本系统具有以下优点:
该系统具有较高的适用性,选用B/S结构,可以在绝大部分个人平台上使用该系统。
系统将用户权限进行划分,管理员,用户能看到及操作的信息不一样,两者具备不同的操作权限。
该系统操作界面简单明了,大部分人都可以正常使用。
但也存在以下问题需要改进:
运行时窗口不能被刷新,可以改进。
系统过于简单,显示的信息有限。
不能添加多个管理员账号,如果可以则将利于发展大学生竞赛管理系统规模,便于大学生竞赛信息集中管理。
7.2 心得体会
由于经验和能力不足,导致在开发、设计该系统的时候,出现了比较多的问题,例如需要用到的技术不熟悉、程序报错等,后来我积极地向同学询问自己出现的问题同时也会找一些相关的书进行学习,慢慢的一点点将自己遇到的问题逐渐解决。所以不管以后在任何时候合作都会让自己事半功倍。通过本系统的完整的开发,可以遇到自己平时写一些简单的小程序遇不到的问题,不仅仅局限与技术与业务方面的,同时也使得自己更加深入的了解软件过程的开发设计思想,对于即将踏入社会工作而言,这些心得都十分重要。在以后的研究生学习生涯也必须加深这方面的理解,将最好的开发技术和最新的科学原理运用到自己以后的开发工作和学习研究中去。
大学生竞赛管理系统-JAVA【数据库设计、源码、开题报告】相关推荐
- python爬虫框架论文开题报告范文_仿今日头条新闻爬虫设计毕业论文+设计源码+开题报告...
摘要 随着社会日新月异和互联网进入大数据时代,自媒体得到了迅猛的发展,人们获取新闻资讯的方式越来越多,接触和使用新闻信息的方式正在逐渐改变,受众从被动接受信息到按需主动搜索信息,而新闻的种类繁多杂乱, ...
- Java毕设项目大学生体检管理系统计算机(附源码+系统+数据库+LW)
Java毕设项目大学生体检管理系统计算机(附源码+系统+数据库+LW) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ E ...
- 计算机毕业设计ssm大学生心理健康管理系统3148k系统+程序+源码+lw+远程部署
计算机毕业设计ssm大学生心理健康管理系统3148k系统+程序+源码+lw+远程部署 计算机毕业设计ssm大学生心理健康管理系统3148k系统+程序+源码+lw+远程部署 本源码技术栈: 项目架构:B ...
- jsp ssm289美食推荐管理系统 java毕业设计项目源码含论文ppt介绍
一.源码描述 这是新款的javassm毕业设计项目源码,开发工具:idea,也支持eclipse,数据库:MySQL功能也比较全面,比较适合作为毕业设计使用 二.功能介绍 美食推荐管理系统的主要使 ...
- 基于ssm的校园门户网站源码+开题报告+需求分析+mysql数据库+前端html文件
下载地址:https://download.csdn.net/download/biyesheji250/28740242 项目介绍: 基于ssm的校园门户网站源码+开题报告+需求分析+mysql数据 ...
- 客栈管理系统java源代码_源码客栈项目源码分类规则
源码客栈团队截至目前已经为Java相关课程设计.实训.毕业设计开发了很多对应的源码,为了整理这些源码我们制定了如下的分类规则,方便大家迅速定位找到合适自己的源码. 星星等级:✩✩星星数量表示难易程度, ...
- 基于Android的人事管理系统开发与设计源码(一)
基于Android开发的人事管理系统 链接:https://blog.csdn.net/yql_617540298/article/details/108553842 上面的链接详细的介绍整个项目,是 ...
- 计算机毕业设计源码分享双鱼林,双鱼林SSM图书信息管理系统毕业课程设计源码 - WEB源码|源代码 - 源码中国...
双鱼林SSM图书信息管理系统\.classpath 双鱼林SSM图书信息管理系统\.mymetadata 双鱼林SSM图书信息管理系统\.project 双鱼林SSM图书信息管理系统\.setting ...
- android短彩信数据库设计源码解析(二)
转载请注明出处:http://blog.csdn.net/droyon/article/details/8734167 这几天连续加班,昨天很早就睡了.一个人的时候要学会自我祝福,祝自己注意身体,天天 ...
最新文章
- 在线作图|在线做扩增子抽平
- Windows下安装MySQL压缩zip包
- MySQL 5.1.24rc + innodb plugin尝鲜
- C# 中特性(Attribute)的使用简介
- html5 网页弹幕,Damoo
- SQLite的基本使用一
- plsql 设置鼠标行执行_如何制作键盘鼠标产品质量合格证
- Datawhale-零基础入门NLP-新闻文本分类Task06
- 杰和科技多款商显方案亮相2017英特尔RCA论坛
- wpe修改充值_wpe实现网络游戏修改
- tf1.x版RandLA-Net源码解读
- 如何用C语言编辑一个万年历,如何用C语言编写一个万年历系统?
- CUDA编程.cu文件
- LATEX 快速入坑系列
- 华为服务器RH2288做raid方法
- AI智能抠图工具--头发丝都可见
- 千氪公开课 | 自媒体下半场,如何把握区块链写作的红利?
- The Oracle
- 聊聊游戏:《空洞骑士》为什么好玩
- 微信小程序——引用阿里云字体
热门文章
- mysql查询条件格式_条件格式
- 集成学习(Bagging和Boosting)
- Ensemble Learning中的Bagging和Boosting
- HashMap底层原理(图文并茂,简单易懂)
- 2022年湖北省光电子信息和生命健康领域科技计划成果路演征集条件以及申报时间流程汇总!
- 还要入驻美团酒店被抽成吗?微小程小程序给你自己的平台
- linux pppd源码下载_LINUX下的拨号利器:wvdial和pppd —— 转载
- 微信新规定!好友之间转账超五千元或将收取手续费,望周知
- ae计算机没有该字体,【干货】自己动手,完美解决AE CC 2017/CC 2018/CC 2019字体问题CT generic: not ascii...
- 《快速上手ARM体系结构》网易公开课