指南
💞当前专栏:SpringBoot程序设计
精彩专栏推荐👇🏻👇🏻👇🏻
💎:Asp.net程序设计
📘:java控制台课程设计
🎈:php课程设计
🎀:微信小程序设计
🕹:python程序设计
🚀:JavaWeb程序设计
🧩:SpringBoot程序设计
🎗:javaSwing程序设计
⛳️:javaSwing游戏设计
🌍:Vue+Node程序设计
🌟:安卓程序设计
🎃:C#程序设计
📕:C++程序设计
💞:C语言程序设计
咨询
见下方二维码
摘要
大学生体质测试管理系统提供给用户一个简单方便体质测试管理信息,通过留言区互动更方便。本系统采用了B/S体系的结构,使用了java技术以及MYSQL作为后台数据库进行开发。系统主要分为系统管理员、教师和用户三个部分,系统管理员主要功能包括首页、个人中心、用户管理、教师管理、体质测试管理、测试报告管理、测试成绩管理、留言板、系统管理;基本上实现了整个大学生体质测试管理系统信息管理的过程。
关键词:大学生体质测试管理系统; java技术;MYSQL数据库;
第二章 相关技术简介
2.1 B/S体系结构
B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说客户端像个“瘦子”,而服务器会越来越“胖”。B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用程序。
图2-1 B/S结构图
2.2 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.3 SpringBoot框架
SpringBoot是一个全新开源的轻量级框架。基于Spring4.0设计,其不仅继承了Spring框架原来有的优秀特性,而且还通过简化配置文件来进一步简化了Spring应用的整个搭建以及开发过程。另外在原本的Spring中由于随着项目的扩大导入的jar包数量越来越大,随之出现了jar包版本之间的兼容性问题,而此时SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性问题得到了很好的解决。
SpringBoot可以看做是Spring的加强版本,但实质上都是Spring的相关技术,有了这些优秀的开源框架,程序员在开发过程中将事半功倍。
2.4 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 系统分析
所谓系统分析就是,需求人员通过与用户的沟通,所获取的信息,然后把这些信息通过需求说明书的方式展示给用户和开发人员。在软件功能发展的历史长河中,很长时间,特别是最开始的时候,需求分析的重要性并不被人们所认同,例如当时美国IBM公司为英国电信公司开发一套信息管理系统,在需求不明确的情况下开始开发,最初的工期为一年,由于需求获取不清晰导致工期推迟了半年多,造成巨大损失。我们很多软件公司也存在这种情况,边需求,边开发,甚至与用户没有沟通清楚的情况下,直接照搬同类型的项目进行更改,导致到系统验收的时候,重新更改,造成了人力、物力的极大浪费。而导致这一切后果的原因就是需求获取不及时、不清楚、不全面。
3.1 可行性分析
3.1.1技术可行性
技术可行性分析是对开发家具网站的技术可行性评估,提前进行规范,现在适合的技术,可以事半功倍。
系统使用JAVA和MYSQL数据库。JAVA是比较成熟的语言,开发系统具有很多优势,完全开源免费。JAVA是嵌入在HTML中的,在服务器运行后,进行解释。JAVA具有独特的语法,执行效率高,因为JAVA代码是在服务器端执行的。JAVA的引擎机制会把执行后的结果保存到客户端内存中,当用户再次访问这个页面时,直接从内存读取,运行速度快。
JAVA是网络编程语言,对于本系统的开发作为合适,在技术上具有可行性。
3.1.2操作可行性
操作可行性主要考虑开发系统后,是否操作方便,是否可以解决现有的问题,是否可以提高相应的效率。本系统使用web模式,通过浏览器即可访问,操作简单。进入系统后,通过主页的菜单快速的进入各个子功能,通过鼠标和键盘就可以完成各种事项。在操作上具有可行性。
3.1.3经济可行性
经济比较包括两个方面,投入和收益。投入上包括开发系统需要的人力成本和服务器硬件成本。人力成本上,一个月的人力成本就5000元左右。服务器硬件成本1万元。而收益上,开发家具网站后可以使用多年,并可以分析给其它高校使用,投入使用一年的收益都将大于投入,所以,在经济上可行。
3.1.4时间可行性
计划使用两个月完成系统的分析、设计、实现和实施。通过前期的调研,完成系统时间需要一个月时间即可,考虑到后期的修改和实施,预留了足够的时间,所以,开发家具网站时间上可行。
3.2 业务流程分析
3.2.1 登录流程
3.2.2 注册流程
3.2.3添加信息流程
3.2.4删除信息流程
4 功能需求
5 数据库
表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
ceshibianhao varchar 200 测试编号
ceshimingcheng varchar 200 测试名称
ceshiwenjian varchar 200 测试文件
tupian varchar 200 图片
faburiqi datetime 发布日期
ceshishuoming longtext 4294967295 测试说明
ceshineirong longtext 4294967295 测试内容
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
表4-3:公告资讯
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture varchar 200 图片
content longtext 4294967295 内容
表4-4:留言板
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 留言人id
username varchar 200 用户名
content longtext 4294967295 留言内容
cpicture varchar 200 留言图片
reply longtext 4294967295 回复内容
rpicture varchar 200 回复图片
表4-5:教师
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jiaoshigonghao varchar 200 教师工号
mima varchar 200 密码
jiaoshixingming varchar 200 教师姓名
xingbie varchar 200 性别
zhicheng varchar 200 职称
lianxidianhua varchar 200 联系电话
touxiang varchar 200 头像
表4-6:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-7:测试成绩
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
ceshibianhao varchar 200 测试编号
ceshimingcheng varchar 200 测试名称
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
ceshipingfen int 测试评分
ceshipingji varchar 200 测试评级
pingfenshijian date 评分时间
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
banji varchar 200 班级
ceshipingjia longtext 4294967295 测试评价
表4-8:测试报告
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
ceshibianhao varchar 200 测试编号
ceshimingcheng varchar 200 测试名称
jiaoshigonghao varchar 200 教师工号
jiaoshixingming varchar 200 教师姓名
baogaowenjian varchar 200 报告文件
tijiaoriqi date 提交日期
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
banji varchar 200 班级
beizhu longtext 4294967295 备注
表4-9:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
xingbie varchar 200 性别
banji varchar 200 班级
lianxifangshi varchar 200 联系方式
touxiang varchar 200 头像
表4-10:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
5 系统实现
5.1系统功能模块
大学生体质测试管理系统,在系统首页可以查看首页、体质测试、公告资讯、留言板、个人中心、后台管理等内容进行详细操作,如图5-1所示。
体质测试,在体质测试页面可以查看测试名称、测试编号、测试说明、测试文件、发布日期、教师工号等内容进行测试等操作,如图5-2所示。
用户注册,通过填写用户账号、密码、确认密码、用户姓名、班级、联系方式等内容进行注册等操作,如图5-3所示。
个人中心,在个人中心页面通过填写用户账号、密码、用户姓名、性别、班级、联系方式、图片等内容进行更新信息等操作;如图5-4所示。
5.2管理员功能模块
管理员登录,管理员通过输入用户,密码,选择角色等信息进行系统登录,如图5-5所示。
管理员登录进入大学生体质测试管理系统可以查看首页、个人中心、用户管理、教师管理、体质测试管理、测试报告管理、测试成绩管理、留言板、系统管理等内容进行详细操作,如图5-6所示。
用户管理,在用户管理页面可以对索引、用户账号、用户姓名、性别、班级、联系方式、头像等内容详情、修改或删除等操作,如图5-7所示。
体质测试管理,在体质测试管理页面可以对索引、测试编号、测试名称、测试文件、图片、发布日期、教师工号、教师姓名等内容进行详情、修改或删除等操作,如图5-8所示。
教师管理,在教师管理页面可以对教师工号、教师姓名、性别、职称、联系电话、头像等内容进行详情、修改或删除等操作,如图5-9所示。
测试报告管理,在测试报告管理页面可以对索引、测试编号、测试名称、教师工号、教师姓名、报告文件、提交日期、用户账号、用户姓名、班级等内容进行详情、修改或删除等详细的操作,如图5-10所示。
测试成绩管理,在测试成绩管理页面可以对索引、测试编号、、测试名称、教师工号、教师姓名、测试评分、测试评级、评分时间、用户账号、用户姓名、班级等内容进行详情、修改或删除等详细的操作,如图5-11所示。留言板,在留言板页面可以对索引、用户名、留言内容、留言图片、回复内容、回复图片等内容进行详情、修改、回复或删除等操作,如图5-12所示。
系统管理,在公告资讯页面中可以对索引、标题、图片等内容进行详情、修改或删除等操作,也可以对轮播图管理进行相应的操作,如图5-13所示。
5.3用户功能模块
用户进入大学生体质测试管理系统可以查看首页、个人中心、测试报告管理、测试成绩管理等内容进行详细操作,如图5-14所示。
测试报告管理,在测试报告管理页面中可以对索引、测试编号、测试名称、教师工号、教师姓名、报告文件、提交日期、用户账号、用户姓名、班级等内容进行详情或删除等详细的操作,如图5-15所示。
5.3教师功能模块
教师注册,通过填写教师工号、密码、确认密码、教师姓名、职称、联系电话等内容进行注册,如图5-16所示。
进入教师页面中可以查看首页、个人中心、体质测试管理、测试报告管理、测试成绩管理等内容进行相应的操作,如图5-17所示。体质测试管理,在体质测试管理页面中可以对索引、测试编号、测试名称、测试文件、图片、发布日期、教师工号、教师姓名等内容进行详细等操作,如图5-18所示。
测试报告管理,在测试报告管理页面中可以对索引、测试编号、测试名称、教师工号、教师姓名、报告文件、提交日期、用户账号、用户姓名、班级等内容进行详细等操作,如图5-19所示。
第六章 系统测试
6.1测试目的
系统测试包括黑盒测试和白盒测试,在黑盒测试中,验证每一个功能是否都可以使用,是否符合需求。之所以叫黑盒测试,是因为把程序当作一个盒子,不去考虑程序内部因素,只是对外部功能进行测试。而白盒测试是对程序进行测试,验证程序功能结构、逻辑等进行测试。
系统测试是软件工程最后一个流程,核心目的是找出问题修复问题。系统测试保证了软件交付的依据,通过了系统测试,才能完成最终审查。系统测试可以使用软件进行测试,也可以人工进行测试,在规范化开发中,通过一定的软件进行性能测试非常有必要,工具可以模拟访问量,连接数等进行系统压力测试。
测试的任务是发现错误,提高系统的强壮型,检验系统开发的情况。又分为了模块测试、组装测试和确认测试。在本系统中,通过测试用例,进行对应的功能测试。
说明
开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql 5.7
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.3.9
后台路径地址:localhost:8080/项目名称/admin/dist/index.html
前台路径地址:localhost:8080/项目名称/front/index.html (无前台不需要输入)
管理员账号:abo
管理员密码:abo