摘要
学科竞赛一直是检测学生学习能力好坏的重要手段,随着社会的发展,学科竞赛已经渗透到各个方面。但是传统方式的竞赛方式已经不能更好的胜任越来越多的需求,所以需要设计一个大学生学科竞赛管理系统,来满足日益重要的学科竞赛管理系统,大学生学科竞赛管理系统作为种新的竞赛手段已经逐步对现有的竞赛管理方式有所影响,为教育方式注入新的血液,并为教育事业的前景增添一份力,有效提大学生竞赛管理的效率。本系统主要目的是让竞赛速度更加高速,让竞赛管理更加便捷,让查看竞赛变得更轻松,让管理变得更容易。在测试中提升效率,让教师工作轻松高效快捷。该系统主要实现了以下几个模块功能前台、管理员、学生和教师四个功能模块,其中前台模块主要实现了首页、竞赛信息、竞赛结果、大赛组织、通知公告、后台管理、竞赛咨询、个人中心等功能;管理员模块主要实现了系统首页、个人中心、学生管理、教师管理、竞赛类型管理、竞赛信息管理、竞赛报名管理、人员指导管理、竞赛结果管理、大赛组织管理、报名缴费管理、费用报销管理、系统管理等功能。 关键词:大学生学科竞赛管理系统;Java;SpringBoot;MySQL
绪论
本章节围绕系统的设计与实现展开详细叙述,本章主要介绍系统的研究背景与意义,以及研究现状。 1.1 选题背景与意义 竞赛一直作为当代学生检验学习效果的一种方式,随着社会的快速发展,竞赛已经不仅仅局限于学生。当今社会发展迅速,人们如果不持续学习很快就会被社会所淘汰。因此,当前有很多人会在网上学习、考证。所以,近年来出来了很多学科竞赛管理系统。 大学生学科竞赛管理系统的出现,可以有效地减少大部分人力、物力的浪费。就目前我国的各个阶段的学生而言,学生日常的学习量大、竞赛种类众多,传统的竞赛方式涉及到出题、批改等过程,这一过程繁杂、任务量大,不仅学生的学习压力很大,而且老师的工作压力也很大。随着学生学科竞赛管理系统的出现,管理员只需要在系统中发布竞赛内容,学生进入系统进行竞赛,学生完成之后,系统会自己进行留查。这样一来,不仅节约了老师的时间,而且还能节约大量的资源,同时学生学科竞赛管理系统也顺行当今时代的潮流。学生学科竞赛管理系统作为新的竞赛手段已经逐步对现有的竞赛和作业方式有所影响,为教育行业方式注入新的血液,并为教育事业的前景增添一份力,有效提高竞赛效率,这个系统主要目的足可以让竞赛变得更方便,变得更轻松,让管理变得更容易[1]。 因此,本次设计一个学生学科竞赛管理系统,设计本系统主要是为了能够更好的帮助老师减少日常工作量,同时也能帮助学生减少对竞赛的抵触心理,更好地顺应时代发展的潮流。
1.2 研究现状 周黎(2019)指出高校大学生学科竞赛这块大都还是采用笔试,没有发现哪所大学拥有一个专门用于的大学生学科竞赛管理系统[1] 张清华(2019)指出大学生学科竞赛管理系统方式的合理使用可以在极大程度上节省人力、物力,并且拥有很高的效率[3] 朱杰(2019)指出Internet技能的打开使得学科竞赛的技能办法和载体发生了划时代的改动,从传统的纸笔到核算机辅佐再打开到依据Web的网上竞赛[4]。 杨永峰,胡莹瑾,张成龙(2019)指出大学生学科竞赛管理系统在国外一些国家现已得到频繁使用,人们选学学科竞赛管理系统都是经过网上进行的,例如,托福竞赛、GRE等,都是选用网上竞赛的办法进行的[5]。 张勇(2018)指出,在学科竞赛管理系统中结束网上竞赛已非难事,其关于竞赛进程信息化推动,下降学科竞赛管理系统本钱,效力宽广学生都有着尤为重要的效果[6]。 基于以上对大学生学科竞赛管理系统的发展研究,发现目前开发一款大学生学科竞赛管理系统,不仅能够顺应当今时代的发展潮流,而且能够帮助老师、学生解决日常的烦恼,同时还能减少大量的资源浪费。因此,大学生学科竞赛管理系统的发展是完全可行的。
系统开发工具
本次毕业设计基于B/S 模式,主要运用Java编程语言、HTML语言、Java语言,SpringBoot框架等技术,采用MySQL做为数据库、Tomcat做为服务器和IDEA开发工具实现,详细介绍如下。 2.1 系统开发工具 本系统使用的是Tomcat 服务器,使用的开发工具是IDEA,接下来对IDEA和Tomcat进行解释说明。 2.1.1 IDEA简介 IDEA 全称IntelliJ IDEA,是用于java语言开发的集成环境(也可用于其他语言),IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的[8]。
2.1.2 Tomcat简介 Tomcat服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选[9]。 2.2 系统开发技术 本节对本系统主要的系统开发技术SpringBoot框架、Java语言、B/S架构、MySQL数据库,接下来对以上技术进行详细的解释说明。
2.2.1 SpringBoot框架 现如今后台开源框架主流的有SSH、SSM、SpringBoot,但是SSH、SSM框架的环境配置项较多,而SpringBoot主要的设计思想就是约定大于配置,故而SpingBoot在设计时几乎达到零配置。SpringBoot整合了业界上的开源框架。具体采用技术框架描述如下: (1)Mybatis:Mybatis:提供自动映射,动态SQL,级联,缓存,注解,代码和SQL分离等特性,使用方便,同时也对SQL进行优化[10]。 (2)SpringMVC:通过一套MVC注解,让POJO成为处理请求的控制器,无需实现任何接口,同时,SpringMVC还支持REST风格的URL请求[11]。 (3)SpringBoot:从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置[12]。 SpringBoot是一款非常强大后台框架,因为SpringBoot开发时可以基本不用写配置文件,所以使用SpringBoot搭建网站的后台环境,在SpringBoot的yml配置文件中写入项目启动端口,项目就可以启动。项目的Java文件还有静态文件都是由SpringBoot来管理。
2.2.2 Java语言 Java主要使用了CORBA技术和安全模型,主要是在网络使用的信息保障上。它还带来了对EJB(Enterprise Java Beans)的完全支援[6],Java SERVLET API,JSP(Java Server Pages),还有XML技术等多进步。因为似乎他们都在自己的主机上一起为自己工作。但事实是,对于某个CPU来说,它只是在特定时点进行了某个程序。CPU在这些程序中间,不断地“跳跃”。而为何人们却看不到什么破坏呢?这是因为,和人的感应一样,它的速度太快了。所以,即使人们发现一些同步操作,其实对电脑而言,也只是在特定时点运行了某个进程,除非的电脑是多CPU的。 2.2.3 B/S架构 B/S这一结构模式和互联网的发展密不可分,它是对C/S的改进,因为以前的C/S结构需要在电脑上进行安装,比如我们最常使用的QQ、杀毒软件、办公软件等等,都是C/S结构开发的,但是随着互联网的发展,人们已经不满足于C/S这种结构,更想要一种能够实现信息数据共享的结构体系,鉴于人们需求的变化,诞生了B/S这一结构,改不了以往需要直接访问服务器的方式(即C/S模式),让用户通过浏览器就可以去实现访问服务器。这种体系结构不仅使得开发出的程序访问更为便捷,而且还减少了更新维护成本,提高交互性。 B/S架构具有以下优点: (1)无需安装专门的软件 (2)服务器上的负荷显然减少了,并且局部可以进行实时更新。
2.2.4 MySQL数据库 在本次毕业设计中,数据库采用了MYSQL数据库. 数据库在软件项目中扮演着操作管理数据的角色同时还能够保证数据的独立性、一致性和安全性,并为系统访问数据提供有效方式不仅如此数据库还能大大减少程序员开发程序时间。在日常能够接触实用的一般有两类数据库,一类是以(Oracle,DB2,SQL Server,MySQL )为代表的关系型数据库和以(NoSql、MongeDB)为代表的非关系型数据库,两类数据库各有各的优缺点。其中非关系型数据库又分为网络数据库和层级数据库。-网络数据库是指在计算机网络系统中应用数据库技术然后借助网络技术将存储于数据库中的大量信息及时发布出去;在成熟的数据库技术的帮助下,计算机网络实现了对网络中的各种数据的有效管理,用户与网络中的数据库数据交互也借此得以进行。IMS也是最早研制成功的数据库系统。关系数据结构、关系操作集合、关系完整性约束构成了关系模型。作为数据库另外一种区分方式的存储介质被大家分为磁盘和内存这 两种。例如:关系型数据库就存储在磁盘中,非关系型数据库则存储在内存中。典型的关系型数据库有:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL、SQLite。小型关系型数据库:Microsoft Access,SQLite;中型关系型数据库:SQL Server,Mysql;大型关系型数据库:Oracle,DB2。
系统整体功能图
注册界面图
登录界面图
系统前台首页界面
竞赛信息页面
竞赛结果页面
大赛组织页面
通知公告页面
竞赛咨询页面
学生后台功能界面
管理员登录界面
管理员功能界面图
学生管理界面图
教师管理界面图
竞赛类型管理界面
竞赛信息管理页面
竞赛报名管理界面图
人员指导管理界面图
部分数据库表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | |||
jingsaibiaoti | varchar | 200 | 竞赛标题 | ||
jingsaileixing | varchar | 200 | 竞赛类型 | ||
jingsaifenlei | varchar | 200 | 竞赛分类 | ||
fengmiantu | longtext | 4294967295 | 封面图 | ||
jingsaifeiyong | float | 竞赛费用 | |||
xueshengxuehao | varchar | 200 | 学生学号 | ||
xueshengxingming | varchar | 200 | 学生姓名 | ||
shoujihao | varchar | 200 | 手机号 | ||
baomingshijian | datetime | 报名时间 |
结束语
现在,已经完成了该大学生学科竞赛管理系统程序开发和论文的编写,通过这次的程序开发和论文的写作,可以检测我们大学期间的所学,是不是做到了认真学习。 该系统主要实现了前台、学生、教师和管理员四个功能模块,其中前台模块主要实现了首页、竞赛信息、竞赛结果、大赛组织、通知公告、后台管理、竞赛咨询、个人中心,学生模块主要实现了系统首页、个人中心、竞赛报名管理、人员指导管理、报名缴费管理、费用报销管理等功能;管理员模块主要实现了系统首页、个人中心、学生管理、教师管理、竞赛类型管理、竞赛信息管理、竞赛报名管理、人员指导管理、竞赛结果管理、大赛组织管理、报名缴费管理、费用报销管理、系统管理等功能,;教师模块主要实现了系统首页、个人中心、竞赛信息管理、竞赛报名管理、人员指导管理、竞赛结果管理、大赛组织管理、报名缴费管理、费用报销管理。软件开发的过程,是一个很辛苦的过程,如果在大学期间没有好好学习,困难更是重重,即使对大学期间认真学习了的同学,也是有一定的困难,毕竟理论知识和实践还是有很大差距的。所以,在本次开发大学生学科竞赛管理系统的时候,也是遇到了相当多的困难,有时候一点头绪也没有,思想都是混乱的,首先就要克服这些问题,在经过了上网查询、同学沟通以及听取指导老师的建议后,慢慢的理顺了思路。 通过开发这个大学生学科竞赛管理系统,也让我认识到了IT技术的伟大,互联网在以后社会更是会和人们不可分割。所以,在以后的社会,IT技术将会更加重要,这也要求我在以后要加强学习,开发出更好的程序,跟随时代的脚步。