




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科生毕业论文(设计)题目springboot教学管理平台学院XXXXX专业班级XXXXX用户姓名XXXX指导教师XXXX撰写日期:2022年5月10日目录TOC\o"1-3"\h\u摘要 摘要21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识,科学化的管理,使信息存储达到准确、快速、完善,并能提高工作管理效率,促进其发展。论文主要是对教学管理平台进行了介绍,包括研究的现状,还有涉及的开发背景,然后还对系统的设计目标进行了论述,还有系统的需求,以及整个的设计方案,对系统的设计以及实现,也都论述的比较细致,最后对教学管理平台进行了一些具体测试。本文以java为开发技术,实现了一个教学管理平台。教学管理平台的主要使用者分为管理员、学生和辅导员;管理员功能分为:首页、站点管理(公告栏、轮播图)用户管理(管理员、学生用户、教师用户)内容管理(论坛列表、论坛分类列表、校园资讯、校园资讯分类、随堂测试)更多管理(作业发布、作业提交、成绩信息、留言反馈)等功能。通过这些功能模块的设计,基本上实现了整个教学管理平台管理的过程。具体在系统设计上,采用了B/S的结构,同时,也使用java技术在动态页面上进行了设计,后台上采用Mysql数据库,是一个非常优秀的教学管理平台。关键词:springboot技术;MYSQL;教学管理平台AbstractTodayinthe21stcentury,withthecontinuousdevelopmentandprogressofsociety,people'sscientificunderstandingofinformationhasdevelopedfromlow-leveltohigh-level,andfromtheoriginalperceptualunderstandingtorationalunderstanding.Theimportanceofmanagementhasbeengraduallyrecognizedbypeople.Scientificmanagementcanmakeinformationstorageaccurate,fastandperfect,improveworkmanagementefficiencyandpromoteitsdevelopment.Thispapermainlyintroducestheteachingmanagementplatform,includingtheresearchstatusandthedevelopmentbackgroundinvolved,andthendiscussesthedesignobjectivesofthesystem,therequirementsofthesystemandthewholedesignscheme.Thedesignandimplementationofthesystemarealsodiscussedindetail.Finally,somespecifictestsarecarriedoutontheteachingmanagementplatform.TakingJavaasthedevelopmenttechnology,thispaperrealizesateachingmanagementplatform.Themainusersoftheteachingmanagementplatformaredividedintoadministrators,studentsandcounselors;Administratorfunctionsaredividedinto:homepage,sitemanagement(bulletinboard,rotationchart),usermanagement(administrator,studentuser,teacheruser),contentmanagement(forumlist,forumclassificationlist,campusinformation,campusinformationclassification,inclasstest),moremanagement(assignmentdistribution,assignmentsubmission,scoreinformation,messagefeedback)andotherfunctions.Throughthedesignofthesefunctionalmodules,themanagementprocessofthewholeteachingmanagementplatformisbasicallyrealized.Specifically,inthesystemdesign,itadoptstheB/Sstructure.Atthesametime,italsousesJavatechnologytodesignonthedynamicpage.MySQLdatabaseisusedinthebackground.Itisaveryexcellentteachingmanagementplatform.Keywords:Springboottechnology;MYSQL;Teachingmanagementplatform1绪论1.1研究背景随着高校的发展,传统的教学管理模式已不能满足现代社会对人才的需求。因此,各院校纷纷开始建设自己的教学管理系统来提高教学质量和管理效率。然而在实际应用中发现:现有系统存在着许多缺陷,如开发时间长,维护困难等。为了解决这些问题,本文提出了一个基于B/S模式的网络教学系统设计方案,该方案利用Java语言实现了一个具有良好可扩展性和可维护性的教学管理信息系统。本课题首先分析了国内外教学管理的现状,并结合目前教育信息化的发展趋势以及学校的具体需要,确定了论文的主要内容;其次通过对系统进行功能需求和非功能需求分析,明确了整个系统所需完成的工作,包括教师管理、学生信息管理、作业发布、作业提交、成绩信息、留言反馈等功能模块;再次,根据各个子模块之间关系,设计出了相应的数据库结构;然后详细阐述了系统各个模块的实现过程,包括登录模块、登陆界面模块、查询统计模块;最后,给出了系统测试结果和总结展望。经过测试表明,本系统运行稳定,操作方便,能够很好地完成预期目标。同时还可以根据用户不同的使用要求,灵活设置参数,以适应各种情况下的需求。另外,由于本系统采用了Java技术框架和MVC设计模式,所以易于扩展,并且能有效避免代码重用率低的缺点。系统上线后取得了较好效果,得到了广大师生的肯定。本系统已经投入试运行阶段。实践证明,该系统不仅为教师提供了便利,也大大提高了工作效率。系统投入使用以来,极大地方便了教师的日常管理工作,使他们从繁琐复杂的手工计算中解放出来,极大地提高了工作效率,而且降低了劳动强度,减轻了工作量,从而达到了优化资源配置的目的,为学院各项业务的开展创造了有利的条件。此外,系统对于其它类型的信息管理系统也有一定的借鉴作用,比如校园一卡通系统、教务管理系统等等,因此在实际应用中值得进一步推广和研究。但是随着信息技术的发展和人们对信息需求量的增加,传统的教学管理方式已不能满足时代的发展需要,而建立一套高效实用的教学管理平台是十分必要的。1.2研究现状高校的教学管理系统已基本形成了以教务管理为核心、行政管理和后勤服务等相关模块组成的完整体系。但在实际运行中还存在着一些问题:如各部门之间缺乏有效沟通,信息交流不及时;系统间数据共享程度低,不能实现资源共享;部分子系统功能重复,无法满足不同用户需求等。这些都严重影响到学校教育教学质量的提高,也不利于教师资源的合理配置。因此,建立一个高效实用的教学管理平台具有十分重要的意义。本文结合本校教学管理工作特点,提出了基于B/S结构的教学评估管理系统。该系统采用面向对象技术设计与开发,主要包括三个方面:对系统进行功能测试和性能测试。通过对学生问卷调查数据和专家意见征询结果的统计分析,确定出各个功能模块所应达到的指标要求。并根据指标体系的划分原则以及具体指标设置,利用模糊综合评判方法对各项评价因素赋权。同时考虑系统的易用性和可扩展性,将系统分为三层架构模型,分别是客户端层、服务器端层和数据库服务器层。其中客户端层用浏览器完成登录操作及各种查询统计等工作;Web服务器层负责接收来自于客户端的各类业务请求;而数据库服务器层中则存储着所有与教学活动有关的数据文件,用于提供给后台使用。最后,通过实验测试表明:本论文所设计开发的基于B/S模式的教学评估管理信息系统能够较好地完成日常教学管理工作任务。其基本功能可概括如下:(1)能方便快速的查看学院课程安排情况;(2)可以方便快捷的查阅院系教学计划;(3)可以随时了解师生学习动态,便于老师掌握授课进度。另外,由于该系统对数据库访问方式简单易用,所以在很大程度上简化了教师工作量,减轻了学生负担,从而提高了教学管理水平和效率。但是,随着系统规模的不断扩大,系统的稳定性和安全性也成为亟待解决的关键问题之一。为了保证系统安全稳定可靠地运行,我们从多方面采取了安全措施:首先,加强系统管理员的培训,使他们熟悉系统的组成模块及其相互关系,增强安全意识。其次,制定详细的管理制度,确保系统正常运转;再次,定期组织安全大检查,及时发现问题并及时解决。总之,经过一段时间的试运行,证明该教学评估管理信息系统基本实现了预期目标,为教学管理部门提供了高效便捷的管理工具。但在今后的应用中还需要进一步完善,以适应新形势的发展需求,更好地为广大教育工作者服务。综上所述,本课题的研究对于促进高校信息化建设具有重要意义,它不仅能为学校管理者提供准确有效的决策依据,而且有助于推动高校教学改革,提升教学质量,进而全面推进高等教育事业健康有序地发展。1.3系统开发技术的特色(1)教学管理平台中的web后台管理中的后端不再使用古老的jsp+javabean+servlet技术,而是使用当前主流的springboot框架,它减少java配置代码,简化编程代码,目前springboot框架也是很多企业选择的框架之一。(2)教学管理平台中的web后台管理中的前端使用的是JavaScript框架,它配合ajax[8]和jquery[9]可以美化页面设计。(3)教学管理平台中数据库用的mysql5.7,它执行效率高。1.4论文结构与章节安排论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对网站需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:第一章:引言。第一章主要介绍了课题研究的背景,系统开发的现状和本文的研究现状与主要工作。第二章:系统需求分析。第二章主要从系统的用户、功能等方面进行需求分析。第三章:系统设计。第三章主要对系统框架、系统功能模块、数据库进行功能设计。第四章:系统实现。第四章主要介绍了系统框架搭建、系统界面的实现。第五章:系统测试。第五章主要对系统的部分界面进行测试并对主要功能进行测试第六章:总结。2教学管理平台系统分析系统分析是开发一个项目的先决条件,通过系统分析可以很好的了解系统的主体用户的基本需求情况,同时这也是项目的开发的原因。进而对系统开发进行可行性分析,通常包括技术可行性、经济可行性等,可行性分析同时也是从项目整体角度进行的分析。然后就是对项目的具体需求进行分析,分析的手段一般都是通过用户的用例图来实现。下面是详细的介绍。2.1可行性分析(1)经济可行性:在项目上使用的工具大部分都是是当下流行开源免费的,所以在开发前期,开发时用于项目的经费将会大大降低,不会让开发该软件在项目启动期受到经费的影响,所以经济上还是可行的。尽量用最少的花费去满足用户的需求。省下经费用于人工费,以及设备费用。将在无纸化,高效率的道路上越走越远。所以经济可行性没有问题。(2)操作可行性:此次项目设计参考了几个该模式下网站的开发案例,对他们的操作界面分析,将众多案例结合在一起,突出以人为本简化操作,所以具有基本计算机知识的人都会操作本项目。因此操作可行性也没有问题。(3)技术可行性:技术可行性指的是对于搭建框架的可行性,以及有更优秀的技术出现时系统的技术更新换代的纳新性如何,开发时间成本费用比如何。现有的springboot技术能够迎合所有电子商务系统的搭建。开发这个教学管理平台的时候我采用了springboot+MYSQL用以运行整体程序。综上所述技术可行性也没有问题。(4)法律可行性:从开发者角度来看,springboot和MYSQL是网上开源且免费的,在知识产权方面不会产生任何法律纠纷。从用户使用角度来看,只要不再系统上贩卖违禁品,对系统做出条约协议,杜绝非法支付即可。综上所述法律可行性也没有问题。2.2系统流程分析业务流程是用一些特定的符合和线条来进行演示用户在使用系统时的过程,在进行系统分析的时候,业务流程可以帮助开发人员更好的理解业务,发现错误,完善系统。2.2.1数据增加流程用户成功登入系统后就能够实现增加数据的操作,增加数据的编号是特定的,系统生成,用户不能随意填写,除了编号以外,其他增加信息用户自己填写,填写后的信息经过系统验证,验证合法通过就显示增加数据成功了,相反的话,就没有增加成功,图2-1显示的就是在增加数据时的流程。图2-1数据增加流程图2.2.2数据修改流程数据修改时的流程和上面介绍的数据增加时的流程差不多,如图2-2所示。图2-2数据修改流程图2.2.3数据删除流程如果系统里面存在一些没有用的数据的话,相关的管理人员还可以对这些数据进行删除,图2-3就是数据删除时的流程图。图2-3数据删除流程图2.3系统功能分析2.3.1功能性分析按照教学管理平台的角色,我划分为了学生用户管理模块、教师用户管理模块和管理员管理模块这三大部分。学生用户管理模块:(1)用户注册登录:用户注册为用户并登录教学管理平台;用户对个人信息的增删改查,比如个人资料,密码修改。(2)查看教学管理平台的首页信息:教学管理平台的首页信息包含了首页、交流论坛、随堂测试、公告消息、校园资讯、作业发布等。(3)公告:用户在公告这一菜单下对用户提交的查看、同时也可以发布、评论。(4)校园资讯:用户进行资讯的阅览,查看管理者发布的校园资讯信息。教师用户管理模块:(1)用户管理:教师可以对前台上注册过的学生信息进行管控,也可以对教师信息进行管控。(2)内容管理:管理员可以对教学管理平台中现有的论坛列表、论坛分类列表、校园资讯、校园资讯分类、随堂测试进行增删改查。(3)更多管理:在“更多管理”这一菜单下,可以对教师人员用户操作的作业发布、作业提交、成绩信息、留言反馈等增删改查。管理员管理模块:(1)用户管理:管理员可以对前台上注册过的学生用户信息以及教师用户进行管控,也可以对管理员信息进行管控。(2)交流论坛管理:管理员在后台可以对教学管理平台中显示的交流论坛进行增删改查。(3)内容管理:管理员可以对教学管理平台前台展示的论坛分类、论坛分类列表、校园资讯及校园资讯分类、随堂测试的分类进行管控。(4)更多管理:在“更多管理”这一菜单下,可以对管理人员用户操作的作业发布、作业提交、成绩信息、留言反馈以及在前台用户提交的交流论坛、随堂测试、公告消息、校园资讯、作业发布等进行管控。(5)站点内容管理:管理员可以对教学管理平台中首页显示的轮播图以及系统中的一些公告发布到系统当中,让用户及时的查看到系统信息,进行合理安排。2.3.2非功能性分析教学管理平台的非功能性需求比如教学管理平台的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下3-1表格中:表3-SEQ表3\*ARABIC1教学管理平台非功能需求表安全性主要指教学管理平台数据库的安装,数据库的使用和密码的设定必须合乎规范。可靠性可靠性是指教学管理平台能够安装用户的指示进行操作,经过测试,可靠性90%以上。性能性能是影响教学管理平台占据市场的必要条件,所以性能最好要佳才好。可扩展性比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。易用性用户只要跟着教学管理平台的页面展示内容进行操作,就可以了。可维护性教学管理平台开发的可维护性是非常重要的,经过测试,可维护性没有问题2.4系统用例分析通过2.3功能的分析,得出了本教学管理平台的用例图:学生用户角色用例如图2-3所示。图2-3教学管理平台学生用户角色用例图web后台管理上的教师用户是维护整个教学管理平台中所有数据信息的。教师角色用例如图2-4所示。图2-4教学管理平台教师角色用例图web后台管理上的管理员是维护整个教学管理平台中所有数据信息的。管理员角色用例如图2-5所示。图2-5教学管理平台管理员角色用例图2.5本章小结本章主要通过对教学管理平台的可行性分析、流程分析、功能需求分析、系统用例分析,确定整个教学管理平台要实现的功能。同时也为教学管理平台的代码实现和测试提供了标准。3教学管理平台总体设计本章主要讨论的内容包括教学管理平台的功能模块设计、数据库系统设计。3.1系统架构设计本教学管理平台从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。图3-1教学管理平台系统架构设计图表现层(UI):又称UI层,主要完成本教学管理平台的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用本教学管理平台时的舒适度。UI的界面设计也要适应不同版本的教学管理平台以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。业务逻辑层(BLL):主要完成本教学管理平台的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。数据层(DL):由于本教学管理平台的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成本教学管理平台的数据存储和管理功能。3.2系统功能模块设计3.2.1整体功能模块设计在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本教学管理平台中的用例。那么接下来就要开始对本教学管理平台的架构、主要功能和数据库开始进行设计。教学管理平台根据前面章节的需求分析得出,其总体设计模块图如图3-2所示。图3-2教学管理平台功能模块图3.2.2用户模块设计后台管理者能够实现对前台注册的用户增删改查操作,用户模块结构图如下图:图3-3用户用户模块结构图3.2.3评论管理模块设计教学管理平台是一个交流性质的公开平台,用户用户和管理人员用户可以对平台上信息进行评论,增加用户之间的互动性。但是同时也为了更好的规范评论的内容,给予管理员删除不合适的言论的功能,所以需要专门设计一个评论管理模块,具体的结构图如下:图3-4评论模块结构图3.3数据库设计数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。3.3.1数据库概念结构设计下面是整个教学管理平台中主要的数据库表总E-R实体关系图。图3-6教学管理平台总E-R关系图下面根据教学管理平台的数据库总E-R关系图可以得出教学管理平台需要很多E-R图,在此罗列出来一些主要的数据库E-R模型图。图3-7留言反馈E-R关系图图3-8教师用户E-R关系图图3-9作业发布E-R关系图图3-10成绩信息E-R关系图3.3.2数据库逻辑结构设计通过上一小节中教学管理平台中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。teacher_user表:名称类型长度不是null主键注释teacher_user_idint11是是教师用户IDteacher_job_numbervarchar64是否教师工号teacher_namevarchar64否否教师姓名teacher_gendervarchar64否否教师性别teacher_agevarchar64否否教师年龄teacher_certificatevarchar255否否教师证examine_statevarchar16是否审核状态recommendint11是否智能推荐user_idint11是否用户IDcreate_timedatetime0是否创建时间update_timetimestamp0是否更新时间student_user表:名称类型长度不是null主键注释student_user_idint11是是学生用户IDstudent_numbervarchar64是否学生学号student_namevarchar64否否学生姓名student_gendervarchar64否否学生性别student_agevarchar64否否学生年龄class_namevarchar64否否班级名称examine_statevarchar16是否审核状态recommendint11是否智能推荐user_idint11是否用户IDcreate_timedatetime0是否创建时间update_timetimestamp0是否更新时间message_feedback表:名称类型长度不是null主键注释message_feedback_idint11是是留言反馈IDstudent_numberint11否否学生学号student_namevarchar64否否学生姓名feedback_informationtext0否否反馈信息recommendint11是否智能推荐create_timedatetime0是否创建时间update_timetimestamp0是否更新时间job_submission表:名称类型长度不是null主键注释job_submission_idint11是是作业提交IDrelease_teacherint11否否发布教师job_namevarchar64否否作业名称release_timedatetime0否否发布时间required_timedatetime0否否要求时间student_userint11否否学生用户submit_jobvarchar255否否提交作业submission_timedatetime0否否提交时间job_detailstext0否否作业详情recommendint11是否智能推荐create_timedatetime0是否创建时间update_timetimestamp0是否更新时间job_release表名称类型长度不是null主键注释job_release_idint11是是作业发布IDrelease_teacherint11否否发布教师job_namevarchar64否否作业名称job_filevarchar255否否作业文件release_timedatetime0否否发布时间required_timedatetime0否否要求时间job_detailstext0否否作业详情recommendint11是否智能推荐create_timedatetime0是否创建时间update_timetimestamp0是否更新时间achievement_information表名称类型长度不是null主键注释achievement_information_idint11是是成绩信息IDtest_paper_namevarchar64否否试卷名称examination_timedatetime0否否考试时间end_timedatetime0否否结束时间total_score_of_test_paperint11否否试卷总分student_numberint11否否学生学号student_namevarchar64否否学生姓名student_scoreint11否否学生分数recommendint11是否智能推荐create_timedatetime0是否创建时间update_timetimestamp0是否更新时间user_answer表:名称类型长度不是null主键注释user_answer_idmediumint8是是user_idmediumint8是否用户IDexam_idmediumint8是否考试idscoredouble8否否分数answersvarchar1000否否答案score_detailvarchar1000否否评分详情objective_scoredouble8否否客观题得分subjective_scoredouble8否否主观题得分score_statetinyint2否否评分状态nicknamevarchar255否否提交人create_timetimestamp0是否创建时间:update_timetimestamp0是否更新时间:3.4本章小结整个教学管理平台的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。4教学管理平台详细设计与实现教学管理平台的详细设计与实现主要是根据前面的教学管理平台的需求分析和教学管理平台的总体设计来设计页面并实现业务逻辑。主要从教学管理平台界面实现、业务逻辑实现这两部分进行介绍。4.1用户功能模块4.1.1前台首页界面当进入教学管理平台的时候,首先映入眼帘的是系统的导航栏,下面是轮播图以及系统内容,其主界面展示如下图4-1所示。图4-1前台首页界面图4.1.2学生登录界面教学管理平台中的前台上注册后的学生是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到教学管理平台的首页中;否则将会提示相应错误信息,学生登录界面如下图4-2所示。图4-2学生登录界面图登录关键代码如下所示。/***登录*@paramdata*@paramhttpServletRequest*@return*/@PostMapping("login")publicMap<String,Object>login(@RequestBodyMap<String,String>data,HttpServletRequesthttpServletRequest){("[执行登录接口]");Stringusername=data.get("username");Stringemail=data.get("email");Stringphone=data.get("phone");Stringpassword=data.get("password");ListresultList=null;Map<String,String>map=newHashMap<>();if(username!=null&&"".equals(username)==false){map.put("username",username);resultList=service.select(map,newHashMap<>()).getResultList();}elseif(email!=null&&"".equals(email)==false){map.put("email",email);resultList=service.select(map,newHashMap<>()).getResultList();}elseif(phone!=null&&"".equals(phone)==false){map.put("phone",phone);resultList=service.select(map,newHashMap<>()).getResultList();}else{returnerror(30000,"账号或密码不能为空");}if(resultList==null||password==null){returnerror(30000,"账号或密码不能为空");}//判断是否有这个用户if(resultList.size()<=0){returnerror(30000,"用户不存在");}UserbyUsername=(User)resultList.get(0);Map<String,String>groupMap=newHashMap<>();groupMap.put("name",byUsername.getUserGroup());ListgroupList=userGroupService.select(groupMap,newHashMap<>()).getResultList();if(groupList.size()<1){returnerror(30000,"用户组不存在");}UserGroupuserGroup=(UserGroup)groupList.get(0);//查询用户审核状态if(!StringUtils.isEmpty(userGroup.getSourceTable())){Stringsql="selectexamine_statefrom"+userGroup.getSourceTable()+"WHEREuser_id="+byUsername.getUserId();Stringres=String.valueOf(service.runCountSql(sql).getSingleResult());if(res==null){returnerror(30000,"用户不存在");}if(!res.equals("已通过")){returnerror(30000,"该用户审核未通过");}}//查询用户状态if(byUsername.getState()!=1){returnerror(30000,"用户非可用状态,不能登录");}Stringmd5password=service.encryption(password);if(byUsername.getPassword().equals(md5password)){//存储Token到数据库AccessTokenaccessToken=newAccessToken();accessToken.setToken(UUID.randomUUID().toString().replaceAll("-",""));accessToken.setUser_id(byUsername.getUserId());tokenService.save(accessToken);//返回用户信息JSONObjectuser=JSONObject.parseObject(JSONObject.toJSONString(byUsername));user.put("token",accessToken.getToken());JSONObjectret=newJSONObject();ret.put("obj",user);returnsuccess(ret);}else{returnerror(30000,"账号或密码不正确");}}4.1.3学生注册界面不是教学管理平台中正式学生的是可以在线进行注册的,如果你没有本教学管理平台的账号的话,添加“注册”,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可学生注册成功。其用学生注册界面展示如下图4-3所示。图4-2学生注册界面图注册关键代码如下所示。/***注册*@paramuser*@return*/@PostMapping("register")publicMap<String,Object>signUp(@RequestBodyUseruser){//查询用户Map<String,String>query=newHashMap<>();query.put("username",user.getUsername());Listlist=service.select(query,newHashMap<>()).getResultList();if(list.size()>0){returnerror(30000,"用户已存在");}user.setUserId(null);user.setPassword(service.encryption(user.getPassword()));service.save(user);returnsuccess(1);}/***用户ID:[0,8388607]用户获取其他与用户相关的数据*/@Id@GeneratedValue(strategy=GenerationType.IDENTITY)@Column(name="user_id")privateIntegeruserId;/***账户状态:[0,10](1可用|2异常|3已冻结|4已注销)*/@Basic@Column(name="state")privateIntegerstate;/***所在用户组:[0,32767]决定用户身份和权限*/@Basic@Column(name="user_group")privateStringuserGroup;/***上次登录时间:*/@Basic@Column(name="login_time")privateTimestamploginTime;/***手机号码:[0,11]用户的手机号码,用于找回密码时或登录时*/@Basic@Column(name="phone")privateStringphone;/***手机认证:[0,1](0未认证|1审核中|2已认证)*/@Basic@Column(name="phone_state")privateIntegerphoneState;/***用户名:[0,16]用户登录时所用的账户名称*/@Basic@Column(name="username")privateStringusername;/***昵称:[0,16]*/@Basic@Column(name="nickname")privateStringnickname;/***密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成*/@Basic@Column(name="password")privateStringpassword;/***邮箱:[0,64]用户的邮箱,用于找回密码时或登录时*/@Basic@Column(name="email")privateStringemail;/***邮箱认证:[0,1](0未认证|1审核中|2已认证)*/@Basic@Column(name="email_state")privateIntegeremailState;/***头像地址:[0,255]*/@Basic@Column(name="avatar")privateStringavatar;/***创建时间:*/@Basic@Column(name="create_time")@JsonFormat(pattern="yyyy-MM-ddHH:mm:ss")privateTimestampcreateTime;@Basic@TransientprivateStringcode;}4.1.4交流论坛界面当访客点击教学管理平台中导航栏上的“交流论坛”后将会进入到该“交流论坛”列表的界面,然后选择想要看的交流论坛,点击进入到详细界面,在详细界面可以发布内容+收藏+评论等操作,交流论坛界面如下图4-3所示。图4-3交流论坛界面图4.1.5公告栏界面当点击导航栏上的“公告栏”的时候,就会进入对应的界面查看公告信息,公告栏界面如下图4-4所示。图4-4公告栏界面图4.1.6随堂测试详情界面当访客点击了任意随堂测试后将会进入随堂测试信息的详情界面,可以了解到该随堂测试的测试名称、答题时长、总分等,同时可以对该随堂测试信息进行评分+查看分数随堂测试详情展示页面如图4-5所示。图4-5随堂测试详情界面图4.3管理员功能模块4.3.1用户管理界面教学管理平台中的管理人员是可以对前台注册的学生用户、教师用户进行管理的,也可以对管理员进行管控。界面如下图4-6所示。图4-6用户管理界面图用户管理关键代码如下所示。publicStringencryption(StringplainText){Stringre_md5=newString();try{MessageDigestmd=MessageDigest.getInstance("MD5");md.update(plainText.getBytes());byteb[]=md.digest();inti;StringBufferbuf=newStringBuffer("");for(intoffset=0;offset<b.length;offset++){i=b[offset];if(i<0)i+=256;if(i<16)buf.append("0");buf.append(Integer.toHexString(i));}re_md5=buf.toString();}catch(Exceptione){e.printStackTrace();}returnre_md5;}4.3.2内容管理界面教学管理平台中的管理人员在“内容管理”这一菜单中是可以对教学管理平台内的论坛列表、论坛分类列表、校园资讯、校园资讯分类、随堂测试等进行维护和管理的,界面如下图4-7所示。图4-7内容管理界面图4.3.3站点管理界面教学管理平台中的管理人员在“站点管理”这一菜单中是可以对前台显示的轮播图以及公告栏进行管控。界面如下图4-8所示。图4-8站点管理界面图站点管理关键代码如下所示。@PostMapping("/add")@TransactionalpublicMap<String,Object>add(HttpServletRequestrequest)throwsIOException{service.insert(service.readBody(request.getReader()));returnsuccess(1);}@TransactionalpublicMap<String,Object>addMap(Map<String,Object>map){service.insert(map);returnsuccess(1);}publicMap<String,Object>readBody(BufferedReaderreader){BufferedReaderbr=null;StringBuildersb=newStringBuilder("");try{br=reader;Stringstr;while((str=br.readLine())!=null){sb.append(str);}br.close();Stringjson=sb.toString();returnJSONObject.parseObject(json,Map.class);}catch(IOExceptione){e.printStackTrace();}finally{if(null!=br){try{br.close();}catch(IOExceptione){e.printStackTrace();}}}returnnull;}publicvoidinsert(Map<String,Object>body){StringBuffersql=newStringBuffer("INSERTINTO");sql.append("`").append(table).append("`").append("(");for(Map.Entry<String,Object>entry:body.entrySet()){sql.append("`"+humpToLine(entry.getKey())+"`").append(",");}sql.deleteCharAt(sql.length()-1);sql.append(")VALUES(");for(Map.Entry<String,Object>entry:body.entrySet()){Objectvalue=entry.getValue();if(valueinstanceofString){sql.append("'").append(entry.getValue()).append("'").append(",");}else{sql.append(entry.getValue()).append(",");}}sql.deleteCharAt(sql.length()-1);sql.append(")");("[{}]-插入操作:{}",table,sql);Queryquery=runCountSql(sql.toString());query.executeUpdate();}4.3.4更多管理界面教学管理平台中的管理人员在“更多管理”这一菜单下是可以对教学管理平台内的作业发布、作业提交、创建信息、留言反馈进行管控的,其管理界面如下图4-9所示。图4-9更多管理界面图更多管理关键代码如下所示。@RequestMapping(value="/del")@TransactionalpublicMap<String,Object>del(HttpServletRequestrequest){service.delete(service.readQuery(request),service.readConfig(request));returnsuccess(1);}@Transactionalpublicvoiddelete(Map<String,String>query,Map<String,String>config){StringBuffersql=newStringBuffer("DELETEFROM").append("`").append(table).append("`").append("");sql.append(toWhereSql(query,"0".equals(config.get(FindConfig.GROUP_BY))));("[{}]-删除操作:{}",table,sql);Queryquery1=runCountSql(sql.toString());query1.executeUpdate();}5系统测试5.1系统测试的目的 系统开发到了最后一个阶段那就是系统测试,系统测试对软件的开发其实是非常有必要的。因为没什么系统一经开发出来就可能会尽善尽美,再厉害的系统开发工程师也会在系统开发的时候出现纰漏,系统测试能够较好的改正一些bug,为后期系统的维护性提供很好的支持。通过系统测试,开发人员也可以建立自己对系统的信心,为后期的系统版本的跟新提供支持。5.2系统测试用例系统测试包括:用户登录功能测试、教学展示功能测试、教学添加、教学搜索、密码修改功能测试,如表5-1、5-2、5-3、5-4、5-5所示:用户登录功能测试:表5-1用户登录功能测试表用例名称用户登录系统目的测试用户通过正确的用户名和密码可否登录功能前提未登录的情况下测试流程1)进入登录页面2)输入正确的用户名和密码预期结果用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入实际结果实际结果与预期结果一致教学查看功能测试:表5-2教学查看功能测试表用例名称教学查看目的测试教学查看功能前提用户登录测试流程点击教学列表预期结果可以查看到所有教学信息实际结果实际结果与预期结果一致管理员添加教学界面测试:表5-3管理员添加教学界面测试表用例名称教学发布测试用例目的测试教学发布功能前提用户正常登录情况下测试流程1)点击教学信息管理就,然后点击添加后并填写信息。2)点击进行提交。预期结果提交以后,页面首页会显示新的教学信息实际结果实际结果与预期结果一致教学搜索功能测试:表5-4教学搜索功能测试表用例名称教学搜索测试目的测试教学搜索功能前提无测试流程1)在搜索框填入搜索关键字。2)点击搜索按钮。预期结果页面显示包含有搜索关键字的教学实际结果实际结果与预期结果一致密码修改功能测试:表5-5密码修改功能测试表用例名称密码修改测试用例目的测试管理员密码修改功能前提管理员用户正常登录情况下测试流程1)管理员密码修改并完成填写。2)点击进行提交。预期结果使用新的密码可以登录实际结果实际结果与预期结果一致5.3系统测试结果通过编写教学管理平台的测试用例,已经检测完毕用户登录模块、教学查看模块、教学添加模块、教学搜索模块、密码修改功能测试,通过这5大
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 投资宝打折协议书
- 心理健康咨询与治疗保险套餐行业深度调研及发展项目商业计划书
- 环保型氟硅脱模剂行业深度调研及发展项目商业计划书
- 电子晶须增强材料行业深度调研及发展项目商业计划书
- 互联网供应链金融数据分析师培训行业深度调研及发展项目商业计划书
- 互联网车险平台企业制定与实施新质生产力项目商业计划书
- 高纤维南瓜籽能量棒行业深度调研及发展项目商业计划书
- 互联网保险社群经济与营销行业跨境出海项目商业计划书
- 金融科技创业投资与孵化服务行业深度调研及发展项目商业计划书
- 语文S版语文四年级上册2.芦叶船练习卷
- 安徽省合肥一中2025届高三5月回归教材读本 解答
- 2025年福建福州左海供应链集团有限公司招聘笔试参考题库附带答案详解
- 2024年济南产业发展投资集团有限公司招聘真题
- 2024年枣庄市滕州市中小学招聘教师笔试真题
- 2025年工程财务分析试题及答案
- 小学校园文化方案
- 财政与金融练习试卷1(共230题)
- 2025年医院管理培训考试试题及答案
- 大学生思想政治教育课件教学
- 北京市公路货运车辆不停车检测系统设施设备运维定额2025
- 生产经营单位事故隐患内部报告奖励机制实践
评论
0/150
提交评论