基于SSM的培训管理系统网络工程专业.docx
《基于SSM的培训管理系统网络工程专业.docx》由会员分享,可在线阅读,更多相关《基于SSM的培训管理系统网络工程专业.docx(28页珍藏版)》请在冰豆网上搜索。
基于SSM的培训管理系统网络工程专业
摘要
本培训管理系统是基于B/S结构开发的,开发过程采用层次分明的MVC开发模式。
系统已经用Java编程语言和MySQL数据库成功开发和实现。
本文首先表述了培训机构管理系统的开发,接着对系统进行了详细的需求分析。
然后详细论述了培训管理系统的功能需求、业务流程、数据流程、系统功能和系统设计。
我们希望利用先进的计算机技术和网络技术来改变目前的信息管理、服务水平,在市场经济的进一步发展中健康稳定地发展。
本培训管理系统操作容易,可以满足管理者的管理需求。
关键词:
培训管理系统;Java;MySQL数据库
ABSTRACT
ThetrainingmanagementsystemisdevelopedbasedontheB/Sstructure,andthedevelopmentprocessisdesignedaccordingtoahierarchicalMVCdevelopmentmode.ThesystemhasbeendevelopedandimplementedsuccessfullyinJavaprogramminglanguageandMySQLdatabase.Thispaperfirstlydescribesthedevelopmentofthetrainingmanagementsystemandthenanalyzesthefunctionalrequirements,theoperationprocess,dataflowandsystemfunctionsindetail.Ihopethatadvancedinformationandnetworktechnologywillhelptoimprovethecurrentlevelofinformationmanagement,provideservices,andachievehealthyandstabledevelopmentinthechangingmarketeconomy.Thetrainingmanagementsystemiseasytooperateandabletomeetthemanagementneedsofmanagers.
Keywords:
Trainingmanagementsystem;Java;MySQLdatabase
第一章绪论
1.1课题背景和意义
时至今日,伴随着科技的迅猛发展,特别是互联网的发展,现在的状态是只要我们所想要的、所需要用到的东西都可以在网上进行下单购买,都可以在网上查到。
比如商品、服务、旅游、娱乐等都可以在网络端实现。
如京东、淘宝、携程旅行等移动软件为我们提供了我们需要的服务。
这表明网络软件将在未来发挥至关重要的作用。
互联网技术在我们的生活中无处不在,扮演着重要的角色。
另外,我国从2016年开始,已经开放了二胎政策,每年新生的宝宝越来越多,不久的将来我国的学生人数将会达到一个峰值,到那个时候学生的规模将会很大,对高质量教育的竞争也会加剧。
除了基础教育资源的竞争外,家长们为了让孩子更加突出,在对教育培训机构的选择上的需求也随之增加。
受到政策的影响,教育培训行业迎来了高速发展的好机会。
网络的高速发展同样带动着培训机构的管理形态的转变,开发一个培训机构管理系统,希望能给用户提供方便的服务。
目前,已有很多关于培训机构的管理系统,但是多数管理系统大多数功能都非常复杂,很难找到想要使用的功能,这对用户来说显然是不方便的。
更有甚者,一些管理系统功能根本没有使用或者很少使用,这也给用户带来了很大的不便。
因此,我决定开发一个简单实用的管理系统,力求对涉及到培训机构管理的常用功能和操作进行简化,以方便用户使用。
1.2开发方法
本课题的开发采用Java+MySQL实现。
在前期,我主要使用相关知识,查询优秀的管理系统开发方法,并结合相关要求编写需求分析。
后期,我进行了这个主题的设计和开发。
本主题的页面主要是用web语言设计的,通过数据库的查询搜索,表单和数据的验证,以及用户类型的权限设计,MySQL数据库用于实现整个系统的操作。
在整个设计过程中,根据需求分析,编写系统实现过程和相关问题的实现方法;在系统成功开发完之后,进行调试和试运行,并做好了试运行的记录。
1.3论文结构
(1)绪论
从课题的背景、意义、以及管理系统的发展状况,本文详细介绍了系统可以应用的方面,并对本章进行了总结。
(2)系统开发技术与环境
使用技术简介、数据库概念和特点、本章总结。
(3)系统分析
可行性分析、需求分析、系统流程分析、数据流程分析、本章总结。
(4)系统设计概要
开发软件的选择、系统总体功能设计、系统数据库设计。
(5)系统详细设计和实现
登录模块设计、首页模块设计,评价信息模块设计,作业模块设计,考试模块设计、公告管理模块设计、用户管理模块设计。
(6)系统测试
开发完成后,还需进行测试。
本系统采用黑盒测试,通过输入不同组的测试数据对功能模块进行测试。
第二章系统开发技术与环境
2.1系统开发语言
Java语言是目前非常流行的编程语言,许多的项目都越来越热衷于使用Java语言进行开发,它比其他的语言更易于使用。
用Java语言所编写的程序既可以在单独的电脑系统上运行也可以在服务器上运行,使用Java编写程序给互联网的交互带来了全新的面貌。
在许多商业性项目上,许多的公司都点名要Java语言进行系统编程,就是看重了Java编写的程序安全性更高且后期维护性更强,也由此可以得出,Java语言的前景十分好,且前途不可估量。
每一个语言都有着自己的优缺点,对于Java语言来说,也是如此。
Java语言相对其他语言更简单易学,且编写的程序安全性更高,稳定性更强,并且可以跨平台使用。
这也就是说使用Java语言进行程序编写只需编写一次就可实现多种平台运行,这也说明它具有更大的伸缩性。
Java语言最佳之处是它的开源性,且它具备多种强大的开发工具。
但是Java语言需要运行环境且框架极多,这就需要编程者去了解这些,也就相应的会延缓编程者的开发时间。
2.2系统前端技术
Html是定义网站结构和内容的一种网页使用的语言,当浏览器访问网站时,它实际上是从服务器下载Html代码,然后生成网页。
HTML的全称是欧洲物理学家TimBernersLee于20世纪90年代发明的“超文本标记语言”,它的一个很重要的功能是支持超链接,可以使当前的网站跳转到其他网站,形成整个互联网。
1999年,HTML版本4.01发布并成为广泛接受的HTML标准。
2014年发布了HTML5,目前正在使用。
浏览器的web开发包含三种技术:
HTML、CSS和JavaScript。
HTML语言定义了网站的结构和内容,CSS样式页定义了网站的样式,JavaScript语言决定了网站和用户之间的交互。
2.3系统网络架构
B/S模式也即浏览器/服务器模式。
其界面部分显示在浏览器端,主要工作由服务器端实现,当用户执行操作时,用户操作信息会从浏览器到服务器,由服务器进行处理,然后服务器端将处理之后的结果反馈给浏览器端,结果在浏览器端界面被呈现给用户查看。
使用B/S模式不仅可以不让用户必须安装专业软件来开发或访问系统的限制,而且更加便利。
用户在客户端上除了使用一个浏览器外,不再需要其他的任何应用程序,需要运行时,只要把程序从网络服务器上下载到我们的本地执行就可以了。
在下载的时候假如有一些跟数据库相关的指令的话,网络服务器会把它们统统交给数据库服务器来进行解释和执行,然后数据库服务器再把它们返回给网络服务器,最后网络服务器再把它们返回给用户。
在这种模式下,有很多的网络连接在一起,它就会形成一个很大的网络,也就是我们说的互联网。
2.4系统数据库的选择
MySQL是一个关系数据库管理系统的数据库。
作为目前最流行的关系数据库管理系统之一,它在Web应用方面取得了巨大的成就,所以也受到了很多大型物联网公司的青睐。
由于其将所有数据存放于一大仓库内,所以它的速度和灵活性都大大提高了。
此外,由于MySQL可以在不同系统中运行,所以它有良好的跨平台性。
MySQL通过最常用的精准语言SQL去访问数据库。
由于MySQL占内存很小、但它的速度却非常的快、总拥有的成本很低,特别是它对于源代码是开源的。
因此,对于中小型网站的开发,一般选择MySQL作为网站数据库也就一点儿都不奇怪了。
2.5系统的运行环境
2.5.1硬件环境
处理器:
要求没有很高,基本能运行系统就行了,当然越高越好
内存:
4G或以上,越高越好
硬盘空间:
1G或以上
2.5.2软件环境
软件环境是开发系统的工具,在开发系统的过程中,开发人员若是对此系统软件开发极为熟悉,那便大大地节约了系统的开发时间,人工精力投入,开发成本。
选择一个自己熟悉的软件环境对系统开发影响极大,也是很重要的。
操作系统:
Windows10
数据库:
MySQL
系统开发工具:
IntelliJIDEA
软件开发语言:
Java和SSM框架
服务器:
Tomcat
该软件界面简洁大方,使用简单易上手
第三章系统分析
3.1可行性分析
3.1.1经济可行性
本系统的研发并不需要很大的经济支撑,在信息的获取上只是需要少量的成本。
同时,我们最终的目标不是很复杂,太复杂的话实用性并不高,系统开发的时间还算是比较长的,但是就效果上来讲,它能够给用户带来很大的便利,而且这个系统它有很大的发展空间,这样就可以产生比成本更多的回报。
Java平台是一个非常自由的平台,开发者的努力是有限的。
这将大大提高系统的生产效率,进而为研发工作创造良好的条件和基础。
结果证明该系统是实用的。
3.1.2技术可行性
本系统基于Java开发,现阶段来讲,Java发展已经相当成熟,以Java语言开发的平台日益增多,随着互联网的飞速发展,将其应用于企业级Web应用开发和移动应用的开发显得尤为重要,受到很多研发工作人员的欢迎。
因此,使用Java这个技术是可以成功开发这个系统的,所以说在技术上是没有问题的。
3.1.3操作可行性
对于一款刚刚问世的软件来说,用户操作这款软件的难易程度决定着这款软件能否经受得住市场的考验,能否大规模的进行推广,这是开发人员必须考虑的问题。
这个系统就非常容易操作。
用户只需要有一个操作设备,系统根本没有指令,自然能够学会使用,操作上完全没有难度,因此,在开发本软件时,我没有提供提示或帮助等功能,这是完全不受影响的。
所以,系统在操作上,都是广大用户非常熟悉的模式,所有的操作都非常简单,容易上手。
3.1.4法律可行性
在进行系统分析的时候,不管哪一方面我都考虑了,考虑的有技术,经济等等方面,当然我也考虑了法律这方面,该系统是不会出现一些法律问题的,它是完全可行的,所以可以放心地开发运营。
3.2需求分析
为了充分的获取并理解用户对于系统功能的需求,需要进行系统的需求分析,以确保系统能真正给用户带来便利。
在进行系统需求分析时需要收集大量的信息,以及想象使用这个系统的时候的各种各样的场景,用这些方式来确定最终的需求,这样的话在系统开发进行时或完成之后就不用再为在系统设计上和系统测试上出现的一些需求问题产生分歧了。
为了达到这个目的,就要求我们在最初确定需求的时候就应该把所需要的需求全部详细的列出,并且最好对这些需求表达清晰,避免模棱两可。
3.2.1功能需求分析
学生登录:
管理员对报名学生信息进行登记注册,学生根据管理员注册的账号登录成功之后就可以进入系统。
学生进入系统之后可以对个人信息进行修改,查看课程表(上课时间、上课科目和任课老师),查看考试成绩,查看课后作业,匿名评价教师教学方法,查看公告栏,查找功能(各模块中可通过科目、姓名等关键字筛选查到相应的信息),导出excel(课程表,考试成绩)。
教师登录:
管理员对机构教师信息进行登记注册,教师根据管理员注册的账号登录进入系统。
进入系统后可以修改个人信息,查看上课安排表,查看公告栏,登记学生考勤情况,录入、修改、查看学生考试成绩,布置学生作业,查看学生评价、查询、查看班级信息,查找功能(各模块中可通过科目、姓名等关键字筛选查到相应的信息),导出excel(课程表,考试成绩)。
管理员登录:
注册学生和教师的信息来为学生和教师创建账号,对学生结业信息进行编辑,对班级信息和课程信息进行增、删、改、查的操作、课程表安排、根据学生评价评选优秀教师(评价等级或分数排名),日志管理(登录日志),编辑公告栏,查找功能(各模块中可通过科目、姓名等关键字筛选查到相应的信息)。
(1)用户
用户用例图如下图所示:
图3-1用户用例图
(2)老师
老师用例图如下图所示:
图3-2老师用例图
(3)管理员
管理员用例图如下图所示:
图3-3管理员用例图
3.2.2性能需求分析
本系统的性能和功能上应满足以下要求:
(1)可扩展性
系统设计是根据当前功能要求开发的,为适应未来实际需求的变化,便于将来功能的扩展和维护,必须考虑系统的可扩展性,以便在根据实际需求添加新的功能模块时,它们不会对原来的系统的体系结构产生很大的影响。
(2)稳定性
系统的运行应该稳定、高效和可靠。
系统功能比较多,按功能进行模块划分时,要尽量做到分工明细,提高其独立性,以保证系统的稳定性。
(3)易用性
系统的使用是为了方便用户,节省用户时间精力,实现高效管理,所以系统在为用户提供实用功能的基础上,还需做到界面美观,操作简单,容易使用,用户体验感良好。
(4)流畅性
为提升用户体验,系统的使用过程中应该加载流畅、响应快速,尽量避免用户等待时间。
通过提升代码质量、建立高效的刷新机制、合理优化布局和内存等来提高响应速度,避免使用时出现程序卡顿,减少等待时间。
界面设计时,通过减少层级、提高布局复用,删除控件无用属性,优化界面从而提高页面加载速度。
通过线程初始化、异步延期加载等策略来优化闪屏页布局和启动逻辑,提高启动速度。
(5)安全性
此系统中存储了大量个人数据,所以系统建立安全性机制和授权设置是非常必要的。
3.3系统流程分析
(1)系统开发流程
在完整的项目开发流程中,以需求分析为基础,基于系统选择的开发模式,使用相关工具和技术,依次进行数据库设计和功能实现,系统开发完成后,通过黑盒测试进行系统调试,完善系统。
系统开发步骤具体如图3-4所示。
图3-4系统开发流程图
(2)登录流程图
本系统有两个登录界面,一个是用户端登录界面,一个是后台管理系统管理员登录端,但不管登录对象是管理员还是用户,登录流程都一样,登录系统会动态判断登录者的角色,并赋予其相应的权限。
具体登录流程如图3-5所示。
图3-5登录流程图
(3)数据操作流程图
本系统需要从数据库中读取的数据有用户信息、班级信息、课程信息、作业信息、评价信息,其数据读取的操作流程如图3-6所示。
图3-6数据读取流程图
用户、课程、班级、作业等信息需要写入数据库,其数据存储的操作流程如图3-7所示。
图3-7数据存储流程图
3.4数据流程分析
根据上述对系统功能的分析可知,无论是用户登录系统还是管理员登录系统后台管理,都需通过账号和密码进行身份审核,通过数据验证后,系统会自动进行权限验证,判断登录用户的角色。
若为用户,只能对个人信息、作业信息进行存储,对公告信息等只能读取;若为管理员,则具有对所有数据进行管理及审核的权限。
本系统的数据处理过程如图3-8所示。
图3-8系统数据流程图
第四章系统设计概要
4.1系统开发软件的选择
本系统使用的是Java语言进行前后台web的编写,在开发过程中,系统采用的idea开发工具,idea是可以免费使用的,这是一款非常好用的开发工具。
我们在数据库中存储系统数据,系统使用的是MySQL数据库,这是一款十分安全可靠的数据库,是系统数据库的最佳选择。
4.2系统总体功能设计
在充分理解系统需求的基础上,对系统功能进行了模块划分。
如图4-1所示:
图4-1系统功能图
4.3系统数据库设计
4.3.1概念模型设计
实体:
一个实体是一个实实在在的,能被我们感受到的实体,它具有属于它自身的特征和属性,这些专属于它的特征和属性使得我们能够区别它与其它实体,并且还可以与其它的实体建立联系。
比如说学生他是一个实体,课程也是一个实体,属性的话我们就可以理解为这些实体的特征。
以下为实体介绍。
图4-2用户实体图图4-3课程实体图
图4-4管理员实体图图4-5公告实体图
4.3.2数据库结构设计
实体和属性的关系模型是数据库结构的一般概念。
数据库结构设计的好不好将会决定系统的速度和系统操作的效果。
以下是系统使用的数据库表信息:
表4-1user表信息
序号
列名
数据类型
长度
小数位
标识
主键
外键
允许空
默认值
说明
1
id
bigint
20
是
是
否
auto_increment
2
login_name
varchar
45
否
3
password
varchar
45
否
4
realname
varchar
45
否
5
gender
varchar
45
是
6
birthday
datetime
是
7
education
varchar
45
是
8
tel
varchar
45
是
9
role
varchar
45
否
10
graduate_time
datetime
是
11
admission_time
datetime
是
12
class_id
bigint
20
是
13
status
varchar
45
否
正常
14
deleted
bit
否
表4-2test_scores表信息
序号
列名
数据类型
长度
小数位
标识
主键
外键
允许空
默认值
说明
1
id
bigint
20
是
是
否
auto_increment
2
exam_id
bigint
20
否
3
student_id
bigint
20
否
4
score
int
11
否
5
deleted
bit
否
表4-3graduation表信息
序号
列名
数据类型
长度
小数位
标识
主键
外键
允许空
默认值
说明
1
id
bigint
20
是
是
否
auto_increment
2
student_id
bigint
20
否
3
time
date
否
4
course_id
bigint
20
否
5
employment_units
varchar
100
是
6
occupation
varchar
100
是
7
remark
varchar
200
是
8
deleted
bit
否
表4-4course表信息
序号
列名
数据类型
长度
小数位
标识
主键
外键
允许空
默认值
说明
1
id
bigint
20
是
是
否
auto_increment
2
name
varchar
100
否
3
class_hour
int
11
否
4
cost
bigint
20
是
5
teacher_id
bigint
20
否
6
deleted
bit
否
表4-5classes表信息
序号
列名
数据类型
长度
小数位
标识
主键
外键
允许空
默认值
说明
1
id
bigint
20
是
是
否
auto_increment
2
name
varchar
45
否
3
status
varchar
45
否
正常
4
deleted
bit
否
表4-6bulletin_board表信息
序号
列名
数据类型
长度
小数位
标识
主键
外键
允许空
默认值
说明
1
id
bigint
20
是
是
否
auto_increment
2
title
varchar
200
否
3
content_rich
text
否
4
time
date
否
5
status
varchar
20
否
正常
6
deleted
bit
否
第五章系统详细设计和实现
5.1用户模块设计
5.1.1用户登录模块设计
管理员在系统上添加了用户信息之后,用户输入的账号和密码已经在数据库中存在了,登录将会成功。
当用户输入的账号和密码不正确时,即登录不成功。
意思就是说,填写上账号与密码若系统不提示登录失败即登录成功。
用户登录界面如图5-1所示
图5-1系统登录模块界面
5.1.2系统首页模块设计
用户成功登录系统之后,最开始看到的就是系统的首页,在首页这个界面,用户可以看到系统的每个模块,在首页中就可以很好地让用户了解系统功能分布,通过首页用户可以很好地使用管理系统。
系统首页界面如图5-2所示
图5-2系统首页设计模块界面
5.1.3系统评价信息模块设计
在系统评价信息模块,用户可以看到系统的评价列表,评价列表是展示评价信息的地方,用户可以在此查看到评价各种信息,点击增加后可以添加其他评价信息。
评价信息界面如图5-3所示
图5-3评价信息模块界面
5.1.4系统作业信息模块设计
在系统作业信息模块,用户可以看到系统的作业列表,作业列表是展示作业信息的地方,用户可以在这里查看各种作业信息,点击查看,查看作业的详细