基于SSM的学生综合测评系统的设计与实现_第1页
基于SSM的学生综合测评系统的设计与实现_第2页
基于SSM的学生综合测评系统的设计与实现_第3页
基于SSM的学生综合测评系统的设计与实现_第4页
基于SSM的学生综合测评系统的设计与实现_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-1-第1章绪论1.1研究目的和意义在科学技术的进步推动之下,生活中每个方面都会用到计算机技术,并在此过程中产生了快速的发展。随着信息化和教育的不断进步,人们越来越重视学习了,学习成绩的测评就是一个关键环节,对学生进行测评,有十分重要的意义对于提高成绩来说。从学生综合测评的角度来说,由于涉及到的学科和项目过多,需进行操作的数据也很多,使得学校很难对其进行全面的统计。所以,利用计算机把学生的综合测评成绩统计起来,放到统一的数据库当中保存,再通过计算机技术对已收集的综合测评成绩进行分类,这样可以让学校的管理变得十分方便,还能节省大量的费用。通过Java语言编写,基于SSM框架,运用MySQL数据库,这是本系统的开发工具。系统拥有的模块很多,像学生管理、教师管理、班级管理、项目管理、科目管理和综合测评管理。系统开发的背景以及意义是本文的开篇之语,随后是讲解了国内外的相关研究现状,然后是系统分析,最后,用图像对各模块进行了说明。系统的设计意义在于,一方面,对学校来说,学校教育教学管理中的重要研究内容就是对学生的成绩进行分析,通过分析学生综合成绩可以进一步了解到学生对知识点的理解和掌握情况以及教师的教学状况,从而进行改进相关的教学状况来更好的帮助学生去学习,对教师的教学环节也提出修改意见,促进教师改善教学方法和教学质量[4],因此对学生进行综合测评具有现实意义;从个人能力方面来说,完成了学生综合测评系统,将在学校学到的知识以设计系统的方式展示出来,提高了使用Java语言进行编程和创新的行动力,对MySQL数据有了更深的认知,在对解决系统出现的各种bug面前,也不再像以前一样害怕了,对我是一次极大的磨练。1.2国内外研究现状在我国国内,许多高校都已经建立起自己的学生全面评价体系;以吉林大学丁汉强为例,在这所学校,学生的综合分数依旧是人工的,而且这所学校的学生和老师都比较多,所以丁汉强为他们设计的这套学生综合分数管理系统,就可以对学生、老师和班级进行管理,除此之外,老师还可以在这套系统上进行留言,学生们也可以在上面看到留言,这样增加了学生和老师之间的沟通。西华大学实施学生综合测评系统,目的在于强化学生的学业水平,提高学生的综合素质;张平在学校里开发了一个可以提供学生管理、教师管理和分数管理等的学生综合测评系统。建立一个全面的学生综合测评系统,既可以减少教师的工作量,还可以提高学生整体表现。在国内,我们学校对学生综合测评的探究并不完美,存在着一些小问题,例如:测评的方式不够健全,导致学生对它不够重视,有时还不够公平、公正。所以,建立一个全面的学生综合测评系统,便于学校对学生进行有效的管理。1.3论文具体安排本论文会用6个章节以及结论来讲解本系统的开发和设计过程,并且讲解从系统开发的工具及相关理论到系统分析再到系统实现,介绍构建的环境,编写的代码等,用本论文让读者们可以认识到本系统。第1章:在绪论部分,明确了背景和意义,并且对国内外的有关研究现状进行了了解,阐明了本论文的结构。第2章:在相关理论与技术部分,是对技术原理的介绍。第3章:在系统分析部分,对系统有关的可行性以及需求进行了分析。第4章:在系统设计部分,主要是对各功能模块以及数据库进行了设计。第5章:在系统实现部分,展示各用户界面的不同功能。第6章:在系统测试部分,说明了测试目标,步骤,用例以及结论。在结论部分,对系统的设计思路和存在的问题进行了阐述。第2章相关理论和技术2.1JSP技术介绍JSP会受到来自客户机发送的请求,当该请求被接收后,将被处理,并将该请求的处理结果反馈给客户机,JSP就是这样工作的。JSP将首个请求转化为经过JSP引擎的servlet文件,以下是过程介绍:(1)Java源码是JSP文件通过JSP引擎进行转换的,如果此时出现语法错误在JSP文件中,就会把这个错误的信息发给服务器和客户机并且停止转换。如果成功转换,Java源码就会用JSP引擎通过javac进行编译,从而得到编译后的class文件。(2)建立正在执行的servlet实例使用jspInit()方法,jspInit()方法会且只会被使用一次在servlet存在的时间内。(3)处理客户机的请求通过jspService()方式来进行,每一个请求会被创建一个新的线程来进行处理,这个是JSP引擎的能力。当很多的客户机向JSP文件发出请求,那么JSP引擎会创建多个线程来回应,记忆体中存在当前的servlet文件,所以对客户机的回应是很快的。(4)若JSP文件已经被修改,那么服务器会根据设定来决定是否要对其进行重新编译,若需要的话,用编译结果来代替内存中的servlet,然后重复上述步骤。(5)尽管JSP非常高效,但是调用时,会有一定的延时情况,是因为要进行转换与编译。另外,无论何时,都会在内存中删除servlet因为JSP引擎缺少一些系统资源。因此,将首先调用jspDestroy()方法,并将回收servlet实例。2.2SSM框架介绍SSM有三种技术分别为:Spring、SpringMVC以及MyBatis。Spring是一种开放源码框架,它出现在2003,是一种用于处理复杂的企业级应用程序开发。Spring利用基础JavaBean实现了过去只有EJB才能实现的功能。Spring是一种用于实现反转和面向切面的容器框架。SpringMVC是SpringFrameWork的继承者,为了方便进行定制,SpringMVC分离了控制器模型对象、分派器和处理程序对象的角色。MyBatis最初是Apache的一个开放源代码项目,之后被Apache软件基金会移植到了谷歌代码中,并且将其命名为MyBatis。MyBatis是一个以Java为基础的持久化框架。MyBatis在配置和初始映射中用到了一个简单的XML或者注释,它把Java的界面和POJOs映射成数据库中的记录。2.3Java技术介绍Java语言和C++语言有很多的相似之处,Java是面向对象设计语言,而C++却不只是这样。C语言中易导致错误的指针被Java所摒弃,为了减轻工作人员的工作,为了不让被引用的对象占据内存空间,所以Java增加了一个垃圾回收的功能,Java在新版本中又增加了一些新的语言特征,比如:泛型编程。相对简单是Java语言的一个特点,虚拟机是Java语言所编写的程序所需的基础,所以Java语言是可以进行跨平台的编写。Java首先会把源码编译成二进制代码,再通过虚拟机在不同的平台上进行编译,这种编译是比较费时间的,所以Java程序性能都不是很好。第3章系统分析3.1可行性分析3.1.1技术可行性会用到的编写语言,所运用到的数据库类型,应用的框架类型,这些都是系统开发时的可行性。在相关理论和技术上认识到了系统的开发,系统是基于SSM框架的,运用Java语言编程的,运用的MySQL数据库。Idea是免费的,是好用的开发环境。3.1.2经济可行性在开发时所需与过去的开发计划相一致,开发计划的全部支出都有清楚的记录,并且满足开发计划的需要。在这个系统完成之后,系统具有良好的发展和较高的价值,这就是系统的经济可行性。综上所述,开发这种学生综合测评系统在经济上是可行的。3.1.3操作可行性当用户使用系统时,会发现它比较容易,大多数功能是一眼就能看懂的,方便管理员使用相关的管理功能,方便老师对学生进行评价,方便学生查询相关信息。系统对不同用户有着不同级别的使用权限管理。对此我认为此系统是可以开发的。3.1.4安全可行性学生综合测评系统能够把所得到的学生个人信息、教师个人信息和学生综合测评成绩存储到一个有权限的数据库当中,只有相应的权限才可以对数据库中的数据进行修改,否则不能修改,这就是系统的安全可行性。3.1.5法律可行性法律上来讲,技术资料是通过符合法律法规的方式取得的,并且没有抄袭其他人所发布的内容,并没有侵权内容,引用部分有所标注;开发的全过程都由个人完成,并没有让他人帮写或设计。所以在法律层面上讲是可行的。3.2需求分析通过对学生综合测评系统的功能分析,可以得到学生综合测评系统的不同用户的不同需求,并且各功能之间要有相互的联系,另外,为了避免来回打相同的代码,所以运用到了页面模块。下面将介绍不同用户界面下的各功能模块,基于SSM的学生综合测评系统有如下功能需求:(1)在管理员功能模块中,学生和老师可以被管理员通过此模块进行管理,同样也可以管理班级,并且管理员还可以对测评科目、项目和综合测评进行管理。(2)在教师功能模块中,教师可以对学生的科目、项目和综合测评的成绩进行管理。(3)在学生功能模块中,学生可以查询各项目、科目和综合测评的成绩,还能查看自己的个人资料,并且可以进行相关修改,比如可以修改姓名、电话。3.3用例图本系统的用例图如图3.1所示。图3.1系统用例图第4章系统设计4.1功能模块设计通过对学生综合测评系统的相关功能分析,就此可以画出功能模块图,各功能模块之间有相互联系,除此之外还使用了页面展现的方式,已实现的功能模块可以通过代码来命令,此行为是减少代码的多次使用,系统分为登陆、用户管理、个人中心、班级管理、项目管理、科目管理、综合测评和系统管理等功能模块:系统功能模块如图4.1所示:图4.1系统功能模块图4.2数据库设计数据的存取与读出是一个数据库实体表达的方式,为了存取与系统有关的数据,编写数据库是其主要功能。根据存取方式的不同,将查询分为列表和索引表两类。有种图,它展现出了数据和数据实体之间的联系,这种图被称为E-R图。基于SSM的学生综合测评系统的实体图、E-R图如下所示:管理员实体图如图4.1所示:图4.1管理员实体图科目测评实体图如图4.2所示:图4.2科目测评实体图(3)项目测评实体图如图4.3所示:图4.3项目测评实体图(4)综合测评实体图如图4.4所示:图4.4综合测评实体图(5)班级实体图如图4.5所示:图4.5班级实体图(6)教师实体图如图4.6所示:图4.6教师实体图(7)学生实体图如图4.7所示:图4.7学生实体图(8)管理员对学生和教师进行管理;教师教育学生并在学期的最后对学生进行项目和科目测评,并最后结合给出综合测评;学生自行查看个人的测评成绩。E-R关系图如图4.8所示:图4.8E-R关系图为每个实体设置相应的数据库和相应的表,学生综合测评系统的具体数据库设计如下:(1)管理员表users“管理员表users”是用来存取管理员信息的。users的结构如表4.1所示。表4.1管理员表字段名称类型长度字段说明主键默认值idbigint主键主键usernamevarchar10用户名passwordvarchar10密码rolevarchar10角色管理员addtimetimestamp新增时间CURRENT_TIMESTAMP(2)公告信息表news“公告信息表news”是用来存取公告信息的。news的结构如表4.2所示。表4.2公告信息表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPtitlevarchar20标题introductionlongtext2000简介picturevarchar20图片contentlongtext2000内容(3)班级表banji“班级表banji”是用来存取班级信息的。banji的结构如表4.3所示。表4.3班级表字段名称类型长度字段说明主键默认值Idbigint主键主键Addtimetimestamp创建时间CURRENT_TIMESTAMPBanjivarchar20班级(4)科目测评表kemuceping“科目测评表kemuceping”是用来存取科目测评信息的。kemuceping的结构如表4.4所示。表4.4科目测评表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPcepingbianhaovarchar20测评编号kemufenleivarchar20科目分类cepingchengjiint测评成绩(分)cepingshijiandate测评时间jiaoshigonghaovarchar20教师工号jiaoshixingmingvarchar20教师姓名xueshengzhanghaovarchar20学生账号xueshengxingmingvarchar20学生姓名banjivarchar20班级(5)科目分类表kemufenlei“科目分类kemufenlei”是用来存取科目分类信息的。kemufenlei的结构如表4.5所示。表4.5科目分类表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPkemufenleivarchar20科目分类(6)综合测评表zongheceping“综合测评表zongheceping”是用来存取综合测评信息的。zongheceping的结构如表4.6所示。表4.6综合测评表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPcepingbianhaovarchar20测评编号cepingchengjivarchar20测评成绩pingyulongtext200评语banjipaimingvarchar20班级排名nianjipaimingvarchar20年级排名cepingshijiandate测评时间jiaoshigonghaovarchar20教师工号jiaoshixingmingvarchar20教师姓名xueshengzhanghaovarchar20学生账号xueshengxingmingvarchar20学生姓名banjivarchar20班级(7)项目测评表xiangmuceping“项目测评表xiangmuceping”是用来存取项目测评信息的。xiangmuceping的结构如表4.7所示。表4.7项目测评表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPcepingbianhaovarchar20测评编号xiangmufenleivarchar20项目分类cepingchengjivarchar20测评成绩cepingshijiandate测评时间jiaoshigonghaovarchar20教师工号jiaoshixingmingvarchar20教师姓名xueshengzhanghaovarchar20学生账号xueshengxingmingvarchar20学生姓名banjivarchar20班级idbigint主键主键yaofeivarchar20药费(8)项目分类表xiangmufenlei“科目分类xiangmufenlei”是用来存取项目分类信息的。xiangmufenlei的结构如表4.8所示。表4.8项目分类表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPxiangmufenleivarchar20项目分类(9)教师表jiaoshi“教师表jiaoshi”是用来存取教师信息的。jiaoshi的结构如表4.9所示。表4.9教师表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPjiaoshigonghaovarchar20教师工号jiaoshixingmingvarchar20教师姓名mimavarchar20密码xingbievarchar20性别touxianglongtext200头像dianhuahaomavarchar20电话号码renkebanjivarchar20任课班级(10)学生表xuesheng“学生表xuesheng”是用来存取学生信息的。xuesheng的结构如表4.10所示。表4.10学生表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPxueshengzhanghaovarchar20学生账号xueshengxingmingvarchar20学生姓名mimavarchar20密码xingbievarchar20性别touxianglongtext200头像nianlingint年龄dianhuahaomavarchar20电话号码shenfenzhengvarchar20身份证banjivarchar20班级第5章系统实现5.1登录学生、教师和管理员通过输入账号密码并选择角色后登录到学生综合测评系统。用户名或者密码输入不正确就不能进入系统,并且提示错误。登录如图5.1所示:图5.1登录实现该功能的关键代码如下。@IgnoreAuth @RequestMapping(value="/login") publicRlogin(Stringusername,Stringpassword,Stringcaptcha,HttpServletRequestrequest){ YonghuEntityuser=yonghuService.selectOne(newEntityWrapper<YonghuEntity>().eq("yonghuzhanghao",username)); if(user==null||!user.getMima().equals(password)){ returnR.error("账号或密码不正确"); } Stringtoken=tokenService.generateToken(user.getId(),username,"yonghu","用户"); returnR.ok().put("token",token); }5.2班级管理以管理员身份登录到后台系统中,进入班级列表界面,可以对班级进行查看、添加、修改、删除、批量删除等操作。删除班级如图5.2所示,新增班级如图5.3所示,查询班级如图5.4所示,修改班级如图5.5所示:图5.2删除班级@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){banjiService.deleteBatchIds(Arrays.asList(ids));returnR.ok();图5.3新增班级实现该功能的关键代码如下:@RequestMapping("/add")publicRsave(@RequestBodyBanjiEntitybanji,HttpServletRequestrequest){banji.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(banji);banjiService.insert(banji);returnR.ok();图5.4查询班级@RequestMapping("/query")publicRquery(BanjiEntitybanji){EntityWrapper<BanjiEntity>ew=newEntityWrapper<BanjiEntity>(); ew.allEq(MPUtil.allEQMapPre(banji,"banji")); BanjiViewbanjiView=banjiService.selectView(ew); returnR.ok("查询班级成功").put("data",banjiView);}}图5.5修改班级@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyBanjiEntitybanji,HttpServletRequestrequest){//ValidatorUtils.validateEntity(banji);banjiService.updateById(banji);//全部更新returnR.ok();}5.3用户管理1.学生管理管理员登录到后台系统后,可以选择学生管理,对学生进行管理,还可以对学生进行批量导入。学生管理如图5.6所示,删除学生如图5.7所示,新增学生如图5.8所示,导入学生如图5.9所示:图5.6学生管理图5.7删除学生图5.8新增学生图5.9导入学生实现导入功能的关键代码如下。@RequestMapping("/importExcel")publicRimportExcel(@RequestParam("file")MultipartFilefile){try{//获取输入流InputStreaminputStream=file.getInputStream();//创建读取工作簿Workbookworkbook=WorkbookFactory.create(inputStream);//获取工作表Sheetsheet=workbook.getSheetAt(0);//获取总行introws=sheet.getPhysicalNumberOfRows();if(rows>1){//获取单元格for(inti=1;i<rows;i++){Rowrow=sheet.getRow(i);XueshengEntityxueshengEntity=newXueshengEntity();xueshengEntity.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());Stringxueshengzhanghao=CommonUtil.getCellValue(row.getCell(0));xueshengEntity.setXueshengzhanghao(xueshengzhanghao);Stringxueshengxingming=CommonUtil.getCellValue(row.getCell(1));xueshengEntity.setXueshengxingming(xueshengxingming);Stringmima=CommonUtil.getCellValue(row.getCell(2));xueshengEntity.setMima(mima);Stringxingbie=CommonUtil.getCellValue(row.getCell(3));xueshengEntity.setXingbie(xingbie);Stringnianling=CommonUtil.getCellValue(row.getCell(4));xueshengEntity.setNianling(Integer.parseInt(nianling));Stringdianhuahaoma=CommonUtil.getCellValue(row.getCell(5));xueshengEntity.setDianhuahaoma(dianhuahaoma);Stringshenfenzheng=CommonUtil.getCellValue(row.getCell(6));xueshengEntity.setShenfenzheng(shenfenzheng);Stringbanji=CommonUtil.getCellValue(row.getCell(7));xueshengEntity.setBanji(banji);//想数据库中添加新对象xueshengService.insert(xueshengEntity);//方法}}inputStream.close();}catch(InvalidFormatExceptione){e.printStackTrace();}catch(IOExceptione){e.printStackTrace();}returnR.ok("导入成功");}2.教师管理管理员可以选择教师管理,对教师进行管理,教师管理如图5.10所示,删除教师如图5.11所示,新增教师如图5.12所示:图5.10教师管理图5.11删除教师图5.12新增教师5.4个人信息管理学生登录进入系统,能在个人中心查看自己的信息,如果发现问题可以进行修改,但是不是所有信息都可以修改,像学生姓名、电话号码之类的可以修改,此外还可以上传自己的头像,按提交就可以修改成功。个人信息如图5.13所示:图5.13个人信息管理实现该功能的关键代码如下。@RequestMapping("/update")publicRupdate(@RequestBodyYonghuEntityyonghu,HttpServletRequestrequest){//ValidatorUtils.validateEntity(yonghu);yonghuService.updateById(yonghu);//全部更新returnR.ok();}5.5项目测评管理教师登录系统之后,在项目测评管理界面,可以点击添加转到添加界面,输入学生姓名、手机号以及测评成绩等详细信息,随后,点击提交就可以将成绩上传。项目测评管理如图5.14所示,删除项目测评如图5.15所示,新增项目测评如图5.16所示,管理员也可以管理学生项目测评,如图5.17所示,学生可以登录系统查看个人项目测评,如图5.18所示:图5.14教师项目测评管理图5.15教师删除项目测评图5.16教师新增项目测评图5.17管理员项目测评管理图5.18学生查看项目测评实现该功能的关键代码如下:@RequestMapping("/query")publicRquery(XiangmucepingEntityxiangmuceping){EntityWrapper<XiangmucepingEntity>ew=newEntityWrapper<XiangmucepingEntity>(); ew.allEq(MPUtil.allEQMapPre(xiangmuceping,"xiangmuceping")); XiangmucepingViewxiangmucepingView=xiangmucepingService.selectView(ew); returnR.ok("查询项目测评成功").put("data",xiangmucepingView);}@RequestMapping("/add")publicRadd(@RequestBodyXiangmucepingEntityxiangmuceping,HttpServletRequestrequest){xiangmuceping.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(xiangmuceping);xiangmucepingService.insert(xiangmuceping);returnR.ok();}@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyXiangmucepingEntityxiangmuceping,HttpServletRequestrequest){//ValidatorUtils.validateEntity(xiangmuceping);xiangmucepingService.updateById(xiangmuceping);//全部更新returnR.ok();}@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){xiangmucepingService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}5.6科目测评管理以教师用户身份登录到前台界面,在科目测评管理界面,可以点击添加进入添加界面,输入科目、学生姓名、手机号以及测评成绩等详细信息点击提交进行科目测评。科目测评管理如图5.19所示,删除科目测评如图5.20所示,新增科目测评如图5.21所示,管理员也可以管理学生科目测评,如图5.22所示,学生可以登录系统查看个人科目测评,如图5.23所示:图5.19教师科目测评管理图5.20教师删除科目测评图5.21教师新增科目测评图5.22管理员科目测评管理图5.23学生查看科目测评实现该功能的关键代码如下:@RequestMapping("/query")publicRquery(KemucepingEntitykemuceping){EntityWrapper<KemucepingEntity>ew=newEntityWrapper<KemucepingEntity>(); ew.allEq(MPUtil.allEQMapPre(kemuceping,"kemuceping")); KemucepingViewkemucepingView=kemucepingService.selectView(ew); returnR.ok("查询科目测评成功").put("data",kemucepingView);}@RequestMapping("/add")publicRadd(@RequestBodyKemucepingEntitykemuceping,HttpServletRequestrequest){kemuceping.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(kemuceping);kemucepingService.insert(kemuceping);returnR.ok();}@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyKemucepingEntitykemuceping,HttpServletRequestrequest){//ValidatorUtils.validateEntity(kemuceping);kemucepingService.updateById(kemuceping);//全部更新returnR.ok();}@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){kemucepingService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}5.7综合测评管理以教师用户身份登录到前台界面中,进入综合测评管理界面,在此界面可对学生的测评信息进行添加、修改和删除等操作,点击添加进入添加界面,输入学生姓名、班级、班级排名、测评成绩以及评语等详细信息点击提交进行综合测评。综合测评管理如图5.24所示,删除综合测评如图5.25所示,新增综合测评如图5.26所示,以管理员登录可以查看、修改和删除所有学生的各综合测评成绩,还可以通过测评成绩进行查询不同学生的成绩,如图5.27所示,学生可以登录系统查看个人综合测评,如图5.28所示:图5.24教师综合测评管理图5.25教师删除综合测评图5.26教师新增综合测评图5.27管理员综合测评管理图5.28学生查看综合测评实现该功能的关键代码如下:@RequestMapping("/query")publicRquery(ZonghecepingEntityzongheceping){EntityWrapper<ZonghecepingEntity>ew=newEntityWrapper<ZonghecepingEntity>(); ew.allEq(MPUtil.allEQMapPre(zongheceping,"zongheceping")); ZonghecepingViewzonghecepingView=zonghecepingService.selectView(ew); returnR.ok("查询综合测评成功").put("data",zonghecepingView);}@RequestMapping("/add")publicRadd(@RequestBodyZonghecepingEntityzongheceping,HttpServletRequestrequest){zongheceping.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(zongheceping);zonghecepingService.insert(zongheceping);returnR.ok();}@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyZonghecepingEntityzongheceping,HttpServletRequestrequest){//ValidatorUtils.validateEntity(zongheceping);zonghecepingService.updateById(zongheceping);//全部更新returnR.ok();}@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){zonghecepingService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}5.8系统管理管理员可以在系统管理界面管理公告。系统管理如图5.29所示,删除系统信息如图5.30所示,新增系统信息如图5.31所示:图5.29系统信息管理图5.30删除系统信息图5.31新增系统信息实现该功能的关键代码如下:@RequestMapping("/query")publicRquery(NewsEntitynews){EntityWrapper<NewsEntity>ew=newEntityWrapper<NewsEntity>(); ew.allEq(MPUtil.allEQMapPre(news,"news")); NewsViewnewsView=newsService.selectView(ew); returnR.ok("查询公告信息成功").put("data",newsView);}@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyNewsEntitynews,HttpServletRequestrequest){//ValidatorUtils.validateEntity(news);newsService.updateById(news);//全部更新returnR.ok();}@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){newsService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}第6章系统测试每一个功能模块和前端运行界面设计后,在正常使用之前,系统都要进行不同的测试,这样才能确保系统工作的可靠和稳定,方便在正常使用之前,对系统进行纠正和改进。测试系统整体功能可以使用黑盒测试这一方法,TESTERS首先站在使用者的立场上,对黑盒进行观察,将与预期相一致的功能测试用例进行对比,有助于确定系统中出现的问题,黑盒测试的主要方法就是偏移与门限分析,系统错误经常发生在输入和输出值的边界上,概率比内部高得多,因此阈值分析进一步确定了系统的稳定性和可靠性,在确定输入和输出范围后选择操作系统阈值来测试系统。6.1测试目标软件测试是为了寻找开发过程中发生的错误,而不是为了验证程序中是否存在错误。这样做是为了发现错误然后去改正它,并不是为了让人们知道程序是正确的。如果测试没有发现错误可能测试的本身就是个错误,通过程序本身的特性和程序开发过程中发生的错误进行分析,可以得到测试过程中存在的问题。通过本文对于程序的分析可以找到一种更有效果的测试方法,这样就可以提高测试速度。测试出那些没有错误的程序是很有用的,好的测试方法才能得到好的程序。6.2测试步骤测试和开发一样,是要分步骤的,程序是由多个模块组成的,所以系统测试的步骤如下:(1)测试是要试出程序中的代码是否出现错误,发现设计中存在的错误。(2)测试程序就是发现项目中存在的错误。(3)使用错误信息进行场景测试。6.3测试用例6.3.1登录测试用例使用黑盒测试技术对系统的用户使用界面的测试用例进行测试,对不同用户可以使用的不同模块进行了测试,在这里只表现出一部分的测试用例并且用表的形式呈现出来,如表6.1所示:表6.1登录测试用例表测试编号测试目的操作步骤预期结果实际结果001登录测试输入正确的用户名和密码登录成功登录成功002登录测试输入错误的用户名登录失败登录失败003登录测试输入错误的密码登录失败登录失败6.3.2项目测评管理测试用例管理端在运行时要满足浏览器的运行需求,比如添加项目测评信息测试、修改项目测评信息测试、删除项目测评信息测试等。本节根据管理端的各模块进行测试,因考虑到本文篇幅有限,这里代表性的部分测试用例,如表6.2所示:表6.2项目测评管理测试用例表测试编号测试目的操作步骤预期结果实际结果001添加项目测评信息测试在添加页面输入项目测评信息,点击确认按钮添加成功添加成功002修改项目测评信息测试在修改页面修改项目测评信息,点击确认按钮修改成功修改成功003删除项目测评信息测试在管理项目测评信息页面,点击某一用户的删除按钮删除成功删除成功004查询项目测评信息测试在管理项目测评信息页面查询输入框输入要查询的用户名字,点击查询按钮查询成功查询成功6.3.3科目测评管理测试用例管理端在运行时要满足浏览器的运行需求,比如添加科目测评信息测试、修改科目测评信息测试、删除科目测评信息测试等。本节根据管理端的各模块进行测试,因考虑到本文篇幅有限,这里代表性的部分测试用例,如表6.3所示:表6.3科目测评管理测试用例表测试编号测试目的操作步骤预期结果实际结果001添加科目测评信息测试在添加页面输入科目测评信息,点击确认按钮添加成功添加成功002修改科目测评信息测试在修改页面修改科目测评信息,点击确认按钮修改成功修改成功003删除科目测评信息测试在管理科目测评信息页面,点击某一用户的删除按钮删除成功删除成功004查询科目测评信息测试在管理科目测评信息页面查询输入框输入要查询的用户名字,点击查询按钮查询成功查询成功6.3.4综合测评管理测试用例管理端在运行时要满足浏览器的运行需求,比如添加综合测评信息测试、修改综合测评信息测试、删除综合测评信息测试等。本节根据管理端的各模块进行测试,因考虑到本文篇幅有限,这里代表性的部分测试用例,如表6.4所示:表6.4综合测评管理测试用例表测试编号测试目的操作步骤预期结果实际结果001添加综合测评信息测试在添加页面输入综合测评信息,点击确认按钮添加成功添加成功002修改综合测评信息测试在修改页面修改综合测评信息,点击确认按钮修改成功修改成功003删除综合测评信息测试在管理综合测评信息页面,点击某一用户的删除按钮删除成功删除成功004查询综合测评信息测试在管理综合测评信息页面查询输入框输入要查询的用户名字,点击查询按钮查询成功查询成功6.4测试结论通过测试多个用例,可以相当于对系统的功能进行了全面的检测,得到系统在测试过程中可以完美的运行,能够把正确的数据展示给用户,用户也可以正常操作系统,可以进行相关的增删改查,由此可以看出本系统的功能和用户使用上都可以到达最初的期望。结论在本研究所实施基于SSM的学生综合测评系统的过程中,首先讲解了研究背景和意义,随后罗列了国内外的研究现状,之后阐明了相关技术及其理论,随后说明了开发工具,阐明了相关可行性,对系统的需求进行了说明,展示了系统如何实现,并以图片的形式展示了各功能模块,介绍了实现功能的关键代码,并且展示了不同用户进入系统后的不同界面。从相关技术与理论到系统分析,再到系统实现和测试,本论文致力于提供每个开发部分的详细描述,以确保系统开发的完整性和有效性。本课题研究的基于SSM的学生综合测评系统由多个模块构成,各模块之间需要较好的数据的交互,所需的软硬件比较多,由于个人的精力、时间和学到的知识有限,所以本系统还有一些瑕疵,比如:不够美观的界面,功能的欠缺,信息的不完全。接下来会在上述的不足之处进行修改和进步,并努力逐步完善学生综合测评系统。参考文献李文全,徐素萍.高校学生综合素质测评系统的设计与实现[J].计算机时代,2018.胡俊敏.高校学生综合素质测评多维度分析系统的设计与实现[J].黑河学院学报,2023.孙尚.面向学生素质教育的综合测评系统的设计与实现[D].

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论