摘 要
随着世界经济信息化、全球网络化的到来推动信息线上管理的飞速发展,为短文写作竞赛行业的改革起到关键作用。若想达到安全,快捷的目的,就需要拥有信息化的组织和管理模式,建立一套合理、畅通、高效的短文写作竞赛管理系统小程序。当前的短文写作竞赛管理存在工作效率低下,人员和资源调配不充分的问题,基于信息化的短文写作竞赛管理系统小程序目前还没有完善的系统机制。
在此基础上,结合现有短文写作竞赛体系的特点,运用新技术,构建了以 springboot为基础的短文写作竞赛管理体系。首先,以需求为依据,对目前传统的短文写作竞赛管理基础业务进行了较为详尽的了解和分析。根据需求分析结果进行了系统的设计,并将其划分为管理员、学生、评委和负责人四种角色:主要功能包括系统首页、个人中心、负责人管理、学生管理、评委管理、专业管理、班级管理、竞赛类别管理、竞赛信息管理、竞赛报名管理、竞赛成果管理、竞赛评分管理、系统管理等。使用目前市场主流的技术 SpringBoot框架和Maven进行项目构建,使用Java开发语言和MySQL数据库对系统进行高内聚低耦合的设计,最终完成了短文写作竞赛管理系统小程序的实现。
本系统为当前传统短文写作竞赛管理提供了一个高效、便捷、信息化的解决方案、有效管控了短文写作竞赛信息的各个环节,这为后期系统的优化提供了新的方向。
关键词:短文写作竞赛;springboot架构;MySQL数据库
1系统分析
3.1需求分析
要想在实际的情况下,开发出一套符合使用者要求的短文写作竞赛管理系统,首先要了解使用者的需求。对短文写作竞赛管理的需求有深刻的了解,无论设计与开发工作多么优秀,都是一个成功的先决条件,也可以这么说,要不能满足用户需求的程序,是创造不出非常大的使用价值的,而且还给设计者带来很多的不利。需求分析是短文写作竞赛管理系统设计时期的比较重要的一个阶段,它的基本内容是准确地解释出系统将会能够做些什么事情的关键问题,最终完成的是一份完整的系统的使用说明。
(1)有一些功能方面的需求,通过需求分析,可以找出需要完成的几个基本功能模块。性能要求也是指在系统设计的时候,需要满足一定的要求和限制,比如响应时间、信息处理、内存容量、磁盘容量、安全等等。
(2)系统的可靠性要求也是一个必须考虑的问题,它可以将可用性和可靠性结合起来,显示了用户在使用时经常遇到的问题。硬件要求也包括需要处理错误,以表明系统如何应对环境错误。如果自己的系统收到来自其他系统的信息,这些信息违背了某些格式,这时系统应该会有什么样的响应情况。
(3)软件方面的需求还有一些逆向的需求,就是系统不能做的事情。可以说,有很多种不同的要求,而开发人员应该能够准确的理解他们的真正需要,并且可以应用到短文写作竞赛管理系统中。还有应该明确地找出一些虽然不属于当前短文写作竞赛管理系统开发的情况,但是据现在的分析,将来是非常可能会需要的可能需求。经过这个需求的分析,在设计过程中对短文写作竞赛管理系统将来有机会出现的问题有所准备,要能够确实需要的时候可以更加轻松的修改。
3.2系统性能分析
系统的性能是指操作系统完成现有的程序的有效性、稳定性以及响应速度,操作系统完成一个任务时,与系统自身设置、路由的设计、网络性能的测试、设备的使用情况等多个方面都密切相关,要是任何一个环节出现问题,就都会影响整个系统的性能。所以要从网络的设置、系统的操作、硬件的组合、程序的应用等方面综合检查,然后问题出现在哪个部分,可以集中进行解决。
在程序的应用、系统的操作、硬件的组合、网络的设置等方面,影响性能最大的是程序的应用和系统的操作两个方面,因为这两个方面如果出现的问题是不太容易察觉,隐蔽性非常的强。而硬件的组合、网络的设置只要出现问题,一般都能马上发现。主要了解一下系统的操作方面的性能操作思路,程序的应用方面需要具体问题还需要有具体的解决办法。
随着线上管理系统的快速发展,以及对于网络的深入认识,这种高度分布式架构最终会变为移动计算。但是,随着计算量的日益增大,系统架构师开始将计算任务转移到共享网络的计算上,这样,他们就可以利用共享网络的计算可以无限制的计算量和存储相关的资源,并享受其带来的比较高的可靠性以及低成本。因此,近年来,许多的企业开始向以共享网络计算为中心的更加有效化的方式发展。
3.3可行性分析
3.3.1经济可行性
系统采用的是java技术来实现相应的功能的开发,综合就是一个比较基础的系统开发设计,所以所用到的有开源的开发环境所构成。而且可以利用现有的设备,不用进行另外的硬件设备购买。
用户通过使用短文写作竞赛管理系统,很大程度减小了人员成本,极大提高了管理的效率。目前得由人员管理的方式存在很多不足,首先是人工成本大,并且工作效率比较低,然后是存在着很多现金流失的问题。在结合短文写作竞赛管理系统的特点,还有一些记录和统计,短文写作竞赛管理系统的管理杜绝了以上的问题,提高了短文写作竞赛管理的安全性。
经济可行性是主要计算项目的开发成本,还有项目成功后可能带来的有效收益。很多的项目只有开发成本能控制在企业有可能接受的范围内的情况下,这样的项目才会被批准开发。然而本次系统的开发在上述所有的问题的情况下,是可以完成相关的系统设计。
3.3.2技术可行性
在研究技术可行性的时候,系统的开发环境是可以确定的,所以技术可行性最好与系统功能和性能以及一些实际的情况同时考虑。在可行性研究阶段,结合实际调整开发的内容和选择能够完成的技术体系是一个可用的手段,如果系统进入开发阶段,任何的调整都意味着会耗费更多的经历。需要再次明确的问题是,技术可行性不只是考虑在技术上是否可实现,实际上还包含了在当前的实际的情况下的技术可行性。有很多的因素例如时间不足、预期的开发目标技术难度比较难、不能有充足的技术积累、而且对于技术的掌握不够等这些实际存在的情况,都是要提前部署和认真规划的。
开发短文写作竞赛管理系统的技术内容分析,目前的状况是从网络硬件和相关技术上看是可行的。该系统采用了java和 MySQL技术。到现在可以知道,很多的基础知识都是经过学习使用的,在后续的设计中还需要不断的练习,学习更多相关的技术经验来充实自己对于系统的开发。
3.3.3社会可行性
在社会可行性分析中,首先能结合国家经济和社会发展的实际情况,还需要能够让用户更加的便利,给使用者带来多方面的高效益,使得可以比较快速的发展以及应用。
在可行性分析中,是比较清晰地发掘开发的系统带来的各种直接的有效的利益以及一些隐藏起来的好处,以便在后续的设计中更加的坚定和确信系统开发的意义。解决一些社会方面存在的问题,设计并开发系统肯定是要发现某类社会存在的问题,并且能够带来一定的社会价值。还有一些社会的影响力,是通过系统优势和切实的好处来产生的,能够在一定的情况下提高效率,肯定会增加一些社会的进步和发展。社会上的可行性,包括法律上的可行性,也包括法律上的可能性,法律上的可行性,需要社会上的许多因素[2],可以来实现系统建设的现实性。如果所开发的系统与国家法律或政策等相关的因素不相符合,在某些信息化的邻域中使用的是一些加密的信息或者技术问题,还有不经过正常的操作使用其他的一些公开的信息等这些情况,这样的系统的开发在法律的范围中就是不能被允许的。
其中还有一个比较重要的用户使用可行性也是通过执行系统时的可行性,是从所有情况下用户的角度来考虑系统的可行性,由于设计开发相关的系统就是站在社会中广大的用户体验考虑的,所以在这个层面考虑也是符合的。
3.4系统用例分析
在设计系统的过程中,用例图是系统设计过程中必不可少的模型,用例图可以更为细致的,结合系统中人员的有关分配,能够从细节上描绘出系统中有关功能所完成的具体事件,确切的反映出某个操作以及它们相互之间的内部联系。
其中参与者就是和系统能够发生交互的外在实体,一般可以指系统的某个用户。一个用例图就能对应出系统中的一个功能过程,系统中完整的功能都是由许多不同的用例图所组成的。
系统用例图如下所示:
(1)管理员可以对系统首页、个人中心、负责人管理、学生管理、评委管理、专业管理、班级管理、竞赛类别管理、竞赛信息管理、竞赛报名管理、竞赛成果管理、竞赛评分管理、系统管理等进行基本的信息管理。其用例分析如图3-1所示。
图3-1 管理员用例图
(2) 负责人可以对系统首页、个人中心、竞赛信息管理、竞赛报名管理、竞赛成果管理、竞赛评分管理等进行基本的信息管理。负责人用例分析如图3-2所示。
图3-2 负责人用例图
(3)评委可以实现对系统首页、个人中心、竞赛信息管理、竞赛报名管理、竞赛评分管理进行操作,评委用例分析如图3-3所示。
图3-3评委用例图
(4)学生可以实现对个人中心、竞赛报名、竞赛成果、竞赛评分等信息进行操作,学生用例分析如图3-4所示。
图3-4学生用例图
2 系统设计
4.1 系统概述
短文写作竞赛管理系统小程序的设计与开发是指对该系统的各个功能模块进行详细设计,力求每个模块都能够满足用户的要求,系统开发完成后还需对系统进行单元测试和系统测试,发现系统中存在的问题并解决,确保系统正常稳定的运行。短文写作竞赛管理系统小程序工作原理图如图4-1所示:
图4-1 系统工作原理图
4.2 系统结构设计
系统结构设计必须要满足管理员、学生、评委和负责人的业务需求,系统结构设计完成后要形成系统结构设计文档,开发人员就可根据模块接口说明进行接口开发,接口开发完需进行功能测试,目的是发现并解决系统漏洞,同时还得保证系统的可扩展性和稳定性,满足用户对系统的要求。系统设计需满足以下要求:
1.安全性
2.易用性
3.柔软性
4.柔软性
5.扩展性
短文写作竞赛管理系统小程序的整体结构设计主要分为四大部分:管理员、学生、评委和负责人。管理员的职责是管理学生信息、评委信息和负责人信息以及设置权限,发布资讯等其他基础功能的管理;整体结构设计如图4-2所示。
图4-2 整体结构设计图
4.3 数据库设计
本系统依赖于MySQL数据库来储存信息,系统完成后,所有需要的数据都要从数据库中读取,这也意味着无论是插入、更新还是删除操作,只要对数据有改动的操作都需要与数据库交互,因此,系统的全部数据都要储存在数据库,必须保证数据库在未经授权情况下不得进行删除表结构等危险操作,而且要保证表中字段的准确性。
4.3.1 数据库设计原则
1.从上而下
2.从下至上
3.逐渐扩大
4.结合方法
4.3.2 数据库实体
E-R图,即实体-联系图,它是一种通过对实例进行抽象,以可视化的方式来描述现实世界的概念模型。根据需求分析绘制出数据库的E-R图,能够直观地映射出各个表之间的关系。
本系统的实体属性图如下图所示:
1、竞赛信息实体图如图4-3所示:
图4-3竞赛信息实体图
4.3.3 数据库表设计
数据库的主要作用是储存和管理整个系统的数据。数据库中的数据在保证一定的独立性和安全性的前提下,也要有某种程度的共享,在一定条件范围内可以共享某些数据。必须保证数据库中每张表里存储的数据是安全的,如果没有经过身份认证,就无法查阅及使用。在进行数据库设计时,应根据具体情况,进行有针对性的数据库开发和设计。下面列举主要数据库表结构。
表4-1:学生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
xueshengxuehao varchar 200 学生学号
xueshengxingming varchar 200 学生姓名
mima varchar 200 密码
xingbie varchar 200 性别
zhuanye varchar 200 专业
banji varchar 200 班级
shouji varchar 200 手机
youxiang varchar 200 邮箱
touxiang longtext 4294967295 头像
表4-2:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-3:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-4:班级
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
banji varchar 200 班级
表4-5: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-6:评委
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
pingweizhanghao varchar 200 评委账号
pingweixingming varchar 200 评委姓名
mima varchar 200 密码
xingbie varchar 200 性别
lianxifangshi varchar 200 联系方式
touxiang longtext 4294967295 头像
表4-7:公告栏
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-8:竞赛信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jingsaibianhao varchar 200 竞赛编号
jingsaimingcheng varchar 200 竞赛名称
jingsaileibie varchar 200 竞赛类别
tupian longtext 4294967295 图片
baomingkaishishijian datetime 报名开始时间
baomingjiezhishijian datetime 报名截止时间
baomingtiaojian longtext 4294967295 报名条件
fabushijian datetime 发布时间
fuzerenzhanghao varchar 200 负责人账号
fuzerenxingming varchar 200 负责人姓名
表4-9:竞赛评分
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jingsaibianhao varchar 200 竞赛编号
jingsaimingcheng varchar 200 竞赛名称
jingsaileibie varchar 200 竞赛类别
tupian longtext 4294967295 图片
jingsaifenshu float 竞赛分数
pingfenbeizhu varchar 200 评分备注
pingfenshijian datetime 评分时间
fuzerenzhanghao varchar 200 负责人账号
fuzerenxingming varchar 200 负责人姓名
xueshengxuehao varchar 200 学生学号
xueshengxingming varchar 200 学生姓名
zhuanye varchar 200 专业
banji varchar 200 班级
shouji varchar 200 手机
pingweizhanghao varchar 200 评委账号
pingweixingming varchar 200 评委姓名
表4-10:竞赛类别
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jingsaileibie varchar 200 竞赛类别
表4-11:竞赛成果
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jingsaimingcheng varchar 200 竞赛名称
chengguomingcheng varchar 200 成果名称
tupian longtext 4294967295 图片
chengguoleibie varchar 200 成果类别
niandu varchar 200 年度
fujian longtext 4294967295 附件
beizhu varchar 200 备注
tijiaoshijian datetime 提交时间
fuzerenzhanghao varchar 200 负责人账号
fuzerenxingming varchar 200 负责人姓名
xueshengxuehao varchar 200 学生学号
xueshengxingming varchar 200 学生姓名
zhuanye varchar 200 专业
banji varchar 200 班级
shouji varchar 200 手机
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-12:竞赛报名
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jingsaibianhao varchar 200 竞赛编号
jingsaimingcheng varchar 200 竞赛名称
jingsaileibie varchar 200 竞赛类别
tupian longtext 4294967295 图片
baomingziliao longtext 4294967295 报名资料
beizhu varchar 200 备注
baomingshijian datetime 报名时间
fuzerenzhanghao varchar 200 负责人账号
fuzerenxingming varchar 200 负责人姓名
xueshengxuehao varchar 200 学生学号
xueshengxingming varchar 200 学生姓名
zhuanye varchar 200 专业
banji varchar 200 班级
shouji varchar 200 手机
crossuserid bigint 跨表用户id
crossrefid bigint 跨表主键id
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-13:专业
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhuanye varchar 200 专业
表4-14:负责人
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
fuzerenzhanghao varchar 200 负责人账号
fuzerenxingming varchar 200 负责人姓名
mima varchar 200 密码
xingbie varchar 200 性别
shoujihao varchar 200 手机号
touxiang longtext 4294967295 头像
3界面设计与功能实现
5.1小程序端实现
5.1.1登录界面的实现
首先双击打开小程序客户端,连上网络之后会显示出本系统的登录界面,这是进入小程序的初始页面“登录”,能成功进入到该登录界面则代表小程序的开启是成功的,接下来就可以操作本系统所带有的其他所有的功能。登录界面如图5-1所示。
图5-1 登录界面
5.1.2 小程序首页功能的实现
小程序首页是学生注册登录后进入的第一个界面,在这里,人们能够看到小程序的导航条,内容包括首页、竞赛信息、竞赛成果、我的等。小程序首页界面如图5-2所示。
图5-2 小程序首页界面图
竞赛信息;在竞赛信息页面可以查看到竞赛名称、竞赛编号、竞赛类别、报名开始时间、报名截止时间、发布时间、负责人账号、负责人姓名、报名条件等详细信息,并根据需要进行报名操作;如图5-3所示。
图5-3竞赛信息界面图