基于SpringBoot技术的综测N服务管理系统设计与实现

来源 :现代信息科技 | 被引量 : 0次 | 上传用户:chongyou2025
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘  要:针对当前高校每学期的综测评分工作工序繁杂、手工操作低效、反复核对耗时长等痛点,设计并实现了一个大学生综测N服务管理信息系统。该系统的设计主要采用当前流行的Java轻量级开发框架SpringBoot开发技术,利用MyBatisPlus操作和管理MySQL数据库,采用Layui框架设计系统界面。该系统采用大量人工智能技术和算法来提高综测计算效率,主要有基于PaddlePaddle的图像识别技术,基于协同过滤算法的智能推荐算法,以及人脸识别技术。
  关键词:综测评分;SpringBoot;MyBatisPlus;Layui框架
  中图分类号:TP391.3    文献标识码:A  文章编号:2096-4706(2021)05-0013-06
  Design and Implementation of Comprehensive Test N Service Management System Based on SpringBoot Technology
  DENG Sini,CHEN Jiamin,CAI Weisheng,YE Kaiping
  (Software Engineering Institute of Guangzhou,Guangzhou  510990,China)
  Abstract:Aiming at the pain points of the current comprehensive evaluation of college in each semester,such as complicated working procedures,inefficient manual operation and long time-consuming check,a N service management information system for college students’comprehensive evaluation is designed and implemented. The design of the system mainly adopts the popular Java lightweight development framework SpringBoot development technology,uses MyBatisPlus to operate and manage MySQL database,and uses Layui framework to design the system interface. The system uses a large number of artificial intelligence technology and algorithms to improve the efficiency of comprehensive evaluation calculation,including image recognition technology based on PaddlePaddle,intelligent recommendation algorithm based on collaborative filtering algorithm,and face recognition technology.
  Keywords:comprehensive evaluation;SpringBoot;MyBatisPlus;Layui framework
  0  引  言
  綜测考核是高校辅导员的一项重要工作,也是用以评估大学生综合素质的依据。开发出一个综测评估管理系统,是当今高校实现高效管理与培育大学生综合素质并对其进行能力评估的重要手段。因此,本文将从技术角度分析该系统开发的可行性和适用性。
  利用传统的JavaEE应用体系进行综测评估管理系统的开发存在诸多不便。首先,需要进行复杂繁琐的配置搭建;其次,存在开发效率低、难度较高的三方集成;最后,部署流程极其复杂。对于先进的轻量级资源整合框架Spring,虽然其相较于传统开发技术实现了许多资源整合配置,但是开发人员仍旧需要手动添加依赖,进行XML配置。然而,SpringBoot省却了设置Spring应用程序所需的复杂例行配置。其最大的作用就是让配置文件、实际应用开发,发布和测试项目变得相对容易一些,此外,其还集成了大量外围框架[1],这足以体现SpringBoot的强大之处[2-4]。
  随着互联网技术的迅猛发展,系统架构模式发生了巨大变化,其已经由单体配置[5]、分布式架构发展到当今比较流行的微服务架构。由于架构体系的变更,大多数公司更加注重于高效、便捷的技术,于是,基于快速构建、开箱即用的SpringBoot技术应运而生[6,7]。
  1  系统设计
  1.1  技术架构设计
  本系统采用的是B/S架构模式,设计为前后端分离的方式。技术架构共分为六层,系统的技术架构如图1所示,接下来着重说明这六层的具体内容[8]:
  (1)基础设施层。主要包括服务器、以太网、通信链路等设备,为系统的搭建提供基础设施保障。
  (2)部署环境。主要采用的是Jdk1.8和Tomcat服务器,为系统的搭建提供项目环境。
  (3)数据持久层。主要包括数据操作工具Mybatis Plus、分布式缓存中间件Redis。采用的是使用范围较广的MySQL数据库。为系统提供稳定的数据库搭建。
  (4)业务层。主要涉及的是华为云ORS、SpringBoot以及应用管理系统模块,包括综测及推优管理、活动赛事管理、数据分析管理、审核数据管理、登录注册管理、违规违纪管理、用户管理、权限管理、个人中心管理及系统维护。   (5)网络通信。主要采用的是负载均衡的Nginx服务器,用于方便前后台交互,提供拦截机制。
  (6)前端。主要包括前端三大基础HTML5、CSS3及JavaScript,Layui前端框架。其中还包括Node.js、NPM(主要用来管理前端工程)、Webpack(主要用于将静态资源js、css及less转换成一个静态文件,减少页面请求)及Bable(保证业务可以在现有环境中执行)。
  权限设置和安全策略主要通过Spring Security提供。使用Spring Security提供多重身份认证模式,可以有效防止暴力攻击,保证系统用户安全。
  1.2  核心功能模块设计
  本系统的主要核心模块包括综测管理、推优管理、数据可视化管理、活动赛事管理,人脸识别登录管理,智能推荐赛事管理。以下为各模块的内容:
  (1)综测管理。本模块主要是针对综合素质评估项进行管理。其中包括专业技能、创造能力、组织管理能力、文体能力、社会实践的评估测算。能够实现综合素质各个测评项的录入和计算。
  (2)推优管理。本模块主要是针对综合素质及学业成绩的排名进行推优汇总。主要包括学生奖学金一二三等奖和优秀学生干部的内容。通过本系统学生可以直接查看自己是否获得推优。
  (3)数据可视化管理。本模块主要是针对综合素质各测评数据以及活动赛事进行可视化管理,此模块能够直观清晰地分析个人综合素质情况,有助于学生、高校综测管理人员及时做出相应的调整和提升。
  (4)活动赛事管理。本模块主要针对的是与大学生综合素质有关的竞赛活动展示、报名。高校学生可以通过此模块进行赛事报名,提升自身的综合素质能力。
  (5)人脸识别登录管理。本模块主要是利用百度的PaddlePaddle人脸识别技术实现人脸模型匹配登录,免去了账号登录的繁琐性,有利于提高用户数据的安全性。
  (6)智能推荐赛事管理。本模块主要是在首页提供适合用户参与的赛事活动。根据用户所参与活动的历史记录情况,为其推荐同类的相关赛事活动。
  2  系统实现
  2.1  智能推荐赛事管理
  在智能推荐赛事管理中,协同过滤算法,是仅仅基于用户行为进行数据设计的推荐算法。本系统采用“协同过滤算法”的研究者所提出的众多方法中的“基于领域的算法”。基于领域的算法分为两大类,一类是“基于用户的协同过滤算法”,另一类是“基于物品的协同过滤算法”。学生在参加活动后数据库会记录其参加比赛的数据,系统可利用该名学生的历史参赛数据来预测其可能喜好的比赛,生成推荐列表为学生推荐最新赛事,如图2所示。
  建立用户模型代码为:
  int[][] currentMatrix = new int[acpapers.size()+5][acpapers.size()+5]; //构建当前矩阵与共现矩阵
  int[][] coOccurrenceMatrix = new int[acpapers.size()+5][acpapers.size()+5];
  int[] N = new int[acpapers.size()+5];
  構建当前矩阵核心代码为:
  for(int i = 0; i < likeLists.size(); i++){int pid1 = likeLists.get(i).getPid();int pid2 = likeLists.get(j).getPid();
  for(int j = i+1; j < likeLists.size(); j++){++currentMatrix [pid1][pid2];++currentMatrix[pid2][pid1]; }
  构建共现矩阵核心代码为:
  for(int j = 0; j < acpapers.size(); j++){
  int pid1 = acpapers.get(i).getPid(), pid2 = acpapers.get(j).getPid();
  coOccurrenceMatrix[pid1][pid2] += currentMatrix[pid1][pid2];
  coOccurrenceMatrix[pid1][pid2] += currentMatrix[pid1][pid2];}
  计算余弦相似度,生成推荐结果代码为:
  for(acPaper acpaper: acpapers){
  AnB = coOccurrenceMatrix[i][j]; //既喜欢赛事A又喜欢赛事B的人
  similarAnB = (double)AnB/Math.sqrt(N[i]*N[j]); //计算余弦相似度
  tmp = activityDao.findacacPaperById(acpaper.getPid());tmp.setW(similarAnB);
  preList.add(tmp);}
  2.2  人脸识别登录管理
  在人脸识别登录管理中,系统采用人脸识别登录方式,利用人脸的匹配机制算法进行合法性校验,通过相机捕获的人脸与现有的人脸库进行实时比对,得到学生人脸库中的id值,然后得出人脸相似度并返回两两比对的人脸相似度得分,用户判断两张脸是否为同一个人,最后通过验证实现人脸登录,如图3所示。这种登录方式极大地提高了信息数据的安全性和保密性,为绿色校园的开展提供了信息数据的便捷性和可靠性。
  前端通过Ajax将相机所捕获的人脸数据发送给后台。后台调用百度AI接口中人脸查找的方法,将相机捕获的人脸数据转换为JSON后向百度API发送POST请求,将请求返回的数据转换为map后对数据进行字符串处理,最后可将所得到的人脸相似度得分和用户id用于登录验证。   人脸识别获取用户数据关键代码为:
  public String searchface(@RequestBodyModel model) {
  Map<String, Object> searchface = loginService.searchface();
  String student_id = searchface.get("student_id").toString();
  String score=searchface.get("score").toString().substring (0,2);
  int similarityScore = Integer.parseInt(score);
  if(similarityScore>90){
  model.addAttribute("studentid",student_id);
  HttpSession session = request.getSession();
  session.setAttribute("studentinf",student_id);
  String s = GsonUtils.toJson(searchface);
  return s;}
  }
  2.3  综测管理
  综测管理中,学生输入综合素质测评项数据并提交,班级综测小组审核并提交综合素质测评项数据,班级综测小组审核全班综测数据无误后提交给辅导员,辅导员复审无误后提交给系综测负责老师,系综测负责老师查看全系综合测评全部数据,并公布全系的综合测评全部数据。
  学生学业成绩、行为表现成绩等数据通常保存在学校服务器中,在此模块中,通过远程调用接口的方法,可以解决学生综测信息中各测评项数据的自动获取与计算问题,得出测评数据供老师审核。
  以学生突出表现能力得分的获取以及汇总为例,综测管理模块通过调用测评模块的接口,先在xml文件中编写SQL语句以从“突出四项测评表”中查询出五项能力的对应分值,根据各项能力在综测总分中的占比,将各项分值按对应比例进行累加得到突出表现能力总分,生成统计数据存储到本地数据库。在测评模块中,统计突出表现总分,如图4所示。
  远程调用功能关键代码为:
   @PostMapping("evaluationCount/{num}")
   public R outstadingCount(@PathVariable String num) {
   evaService.outstadingrCount(num);
   return R.ok();}
  远程调用获取到的数据添加到本地数据库的代码为:
  public void registerCount(String day) {
  R registerR = ucenterClient.countRegister (day);
  Integer countRegister = (Integer)registerR.getData().get("countRegister");
  Outstading eva = new Outstading();
  eva.setoutstadingNum(countOutstading);
  baseMapper.insert(eva);}
  2.4  推优管理
  推优管理中,各班辅导员查看全班综合素质测评排名,并根据排名情况筛选出有资格获得学生奖学金和优秀学生干部的学生名单,对于已提交的推优名单中存在违纪的学生则采取剔除做法,系级综测负责人查看全系推优汇总名单并提交给院级学生处老师进行复审,最后对审核通过的推优名单进行公示,如图5所示。
  根据选择的条件筛选出有资格获得学生奖学金和优秀学生干部的学生名单,并判断所选择的条件是否存在,关键代码为:
  Page<SrudentEnroll> pageStudentCondition = new Page<>(current,limit);
  QueryWrapper<StudentEnroll> wrapper = new QueryWrapper<>();
  String studentStart = studentQuery.getStudentStart();
  String studentEnd = studentQuery.getStudentEnd();
  if(!StringUtils.isEmpty("activityStart")){wrapper.ge("activityStart",activityStart);}
  if(!StringUtils.isEmpty("activityEnd")){wrapper.le("activity End",activityEnd);}
  查詢出班级内所有具有推优资格的学生并进行汇总后,教师可根据名单对学生进行拟定奖项推优。根据总记录数中学生的综合测评分数进行排序的代码为:
  wrapper.orderByDesc("sutdent_score");
  StudentEnrollService.page(pageStudentCondition,wrapper);
  long total = pageStudentCondition.getTotal();   List<StudentEnroll> records = pageStudentCondition.getRecords();
  return R.ok().data("total",total).data("rows",records);
  2.5  综测可视化管理
  综测可视化管理中,各班辅导员及学生可以通过点击“统计分析”按钮,查看综测各项图表分析,页面展示的是使用ECharts得到的图表展示,ECharts是通过JavaScript实现的开源可视化库,可以在PC和移动设备中流畅地运行,对本系统中学生各项数据统计具有重要作用。综测可视化管理界面如图6所示。
  后端模块架构使用Springboot框架。项目中创建mapper接口,在xml文件中编写SQL语句查询出前端页面选择的某一天赛事总数。然后对SQL数据库查询出的所有赛事列表中所需的字段进行封装,返回前端ajax请求接口所需得到的数据格式。针对数据字段进行封装返回json关键代码为:
  public BarVO getBarVO() {
  List<activityBarVO> list = activityMapper.findAllactivity BarVO();
  List<String> names = new ArrayList<>();
  List<Integer> values = new ArrayList<>();
  for (activityBarVO activityBarVO : list) {
  names.add(activityBarVO.getName());
  values.add(activityBarVO.getCount());}
  BarVO barVO = new BarVO();barVO.setNames(names); barVO.setValues(values);
  return barVO;}
  3  系统测试和功能点测试
  本综测系统经过一段时间的开发之后,核心功能模块基本完成。接下来进入系统测试和功能点测试环节。
  3.1  系统测试
  测试部署环境:jdk1.8、tomcat服务器、Swagger2调试。
  测试硬件设备情况:CPU选择Intel酷睿i7 8550;运行内存为8 GB;内存选择固态硬盘256 GB+机械硬盘1 TB;操作系统选择微软Windows 10。
  3.2  功能点测试
  表1是本系统核心系统功能测试。
  4  结  论
  基于SpringBoot技术的可视化分析综测服务管理系统采用当今流行的技术框架。通过本系统可以更加有效地解决综测评分管理工作的痛点,并确保综测核算数据的完整性、准确性和共享性,大学生可以在本系统上查看综合测评数据情况,通过分析自身综合素质和具体各项能力,发现自身存在的问题以便及时做出适当的调整。这为大学生的综测评估提供了一个良好的展示平台。
  与以往的综测管理系统相比,本系统具有丰富性和多元化的特点,学生可以通过人脸识别进行登录操作,进一步提升了信息数据的安全性。学生综测统计数据的结果可以实时展示,便于高校综测管理人员对学生的综测情况进行及时有效的管理。本系统可拓展性极强,如果有新的需求,只需在原有接口上进行一定的修改或者新增接口即可快速实现二次开发,可以按照学校实际需求将系统拓展到中小学“德智体美劳”素质教育考核评估当中。
  参考文献:
  [1] 田海晴.基于SpringBoot和Vue框架的共享运营管理平台的设计与实现 [D].济南:山东大学,2020.
  [2] 桂晨晖.基于SpringBoot框架对P2P借贷平台的设计与实现 [D].成都:电子科技大学,2019.
  [3] 李忠毅.基于SpringBoot的小型日常交流论坛的设计与实现 [J].现代计算机,2020(25):105-108.
  [4] 常宁.基于HTML5的房产信息采集系统的设计与实现 [D].青岛:中国海洋大学,2015.
  [5] 张卫华.基于SSM的权限管理系统及数据可视化 [D].北京:北京邮电大学,2020.
  [6] 闫四洋,胡昌平,卞德志,等.基于SpringBoot+Mongo DB的微服务日志系统的实现 [J].计算机时代,2020(8):69-71+74.
  [7] 熊永平.基于SpringBoot框架应用开发技术的分析与研究 [J].电脑知识與技术,2019,15(36):76-77.
  [8] 黄华.基于J2EE技术架构的数字电视管理系统的设计与实现 [D].长沙:湖南大学,2016.
  作者简介:邓斯妮(2000—),女,汉族,湖南邵阳人,本科在读,研究方向:网站开发;陈家敏(1999—),女,汉族,广东汕头人,本科在读,研究方向:网站开发;蔡维晟(1999—),男,汉族,广东揭阳人,本科在读,研究方向:Java开发;叶开平(1997—),男,汉族,广东河源人,本科在读,研究方向:Java开发。
其他文献
目的:探究多层螺旋CT(MSCT)三维后处理成像技术在评估肝细胞肝癌(HCC)患者血供方式及临床诊断中的应用价值。方法:选取2017年10月-2019年10月在本院接受治疗的HCC患者80例为对象,所有患者均接受MSCT检查和彩色多普勒超声(CDFI)检查,分析患者MSCT影像学特征,观察MSCT和CDFI下患者的血供情况,采用受试者操作特性曲线(ROC)评估MSCT对HCC患者血供方式的诊断效能。结果:80例患者手术病例检查共检出91个病灶,MSCT扫描共检出个87病灶,检出率为95.60%。DSA检查
本文结合空气中苯系物含量的测定能力验证项目,依据GB/T 18204.2-2014《公共场所卫生检验方法第2部分:化学污染物》,以活性炭管采样,并采用热解吸-毛细管气相色谱法测定空气中苯含量为例,对空气中苯系物含量测定的测量不确定度的评定方法进行了详细讲述。通过数据统计发现空气中苯的测量不确定度主要来源是标准溶液和标准曲线测定引入的不确定度。重复性测量引入的不确定性相对较大,所以实验室在日常检测过程中应尽可能的增加平行测定的次数,增加数据的可靠性。
目的:研究调峰调频发电企业基于可视化配置开发平台的移动应用的持续开发方案。方法:革新系统将移动端的3个独立APP整合为1个APP,所以有效解决了APP后台进程意外终止的问题。结果:因为减少APP底层模块的固态存储空间占用量和缓存占用量,系统的空间需求、点击响应时间、误码率和查询错误率得到优化。结论:基于调峰调频电厂调度系统的移动端应用实际效能得到有效提升,且可以达到较高的系统可靠性。
目的:研究淋巴细胞亚群及免疫球蛋白检测在慢性活动性EB病毒感染(CAEBV)与传染性单核细胞增多症(IM)患儿鉴别诊断中的应用价值。方法:纳入2017年4月至2019年4月于我院收治的102例EB病毒(EBV)感染患儿为对象,按疾病类型将其分为CAEBV组(42例)和IM组(60例);另选取同期入院的60例健康儿童为正常对照组。采集外周静脉血标本,利用流式细胞术检测淋巴细胞亚群。观察三组淋巴细胞亚群及血常规检测结果,并分析三组免疫球蛋白A(IgA)、免疫球蛋白G(IgG)、免疫球蛋白M(IgM)水平,判断
目的:探讨环氧乙烷、过氧化氢等离子、戊二醛三种不同的灭菌方法对腹腔镜手术器械灭菌效果的影响。方法:将287件腹腔镜手术器械分为A、B、C三组,A组96件,采用环氧乙烷进行消毒;B组96件,采用过氧化氢低温等离子灭菌法进行灭菌;C组95件,采用戊二醛进行消毒灭菌。结果:3种灭菌方法生物检测合格率均为100%,与其他两种方法相比,过氧化氢等离子低温灭菌的灭菌时间最少、灭菌后有效时间最长、没有毒性反应。结论:三种方法中,在没有经济压力、需要快速周转腹腔镜手术器械的情况下优先选择过氧化氢等离子低温灭菌技术。
个性化党建推荐系统在党建过程中具有至关重要的作用,可以激发党员学习党的最新理论,保持党员先进的作用.党员的文化程度、工作岗位等差别决定了党建必须要结合实际,本文基于
摘 要:分析健康管理中心分诊平台日常运行的现状,构建智能导检系统以实现全流程智能导检。利用大数据分析、定制智能排队导检规则、实施5S健康管理模式等方法对瓶颈问题进行整改,并做出对比分析。实施智能导检系统后,分诊室节点人流得到有效控制,降低了医务人员工作量,体检人员就诊体验感得到提高。智能导检系统能够有效解决健康管理中心人员分诊的问题,体检满意度得到有效提升。  关键词:医疗大数据;健康管理中心;智
摘 要:当前,由互联网演进、催生的“互联网+”模式,正全方位地介入包括教育在内的社会各领域。然而我国高校非通用语课程建设模式仍以传统模式为主,教学方式比较单一,高校非通用语学习者面临学习资源严重匮乏,现有资源太过老旧和零散、不成体系等问题。通过对非通用语及非通用语学习APP发展现状进行研究,以及对“互联网+”与非通用语结合的发展趋势进行调查分析,以“译起玩APP”的探索和开发为例,提出非通用语学习
目的:分析Motomed上下肢康复训练器在脑卒中偏瘫患者中的应用效果及对肢体功能的影响。方法:以2019年1月-2020年1月本院收治的92例脑卒中偏瘫患者为对象,根据随机数字表法将其分为两组,对照组46例予以常规康复训练,试验组46例予以Motomed上下肢康复训练器训练,对比分析两组治疗后上肢、下肢康复效果、神经功能及生活能力。结果:试验组治疗后香港版偏瘫上肢功能测试表(FTHUE-HK)、Fugl-Meyer评定表上肢部分(FMA-UE)及运动力指数上肢部分(MI-UE)评分均比对照组高(P<
近年来随着高校的扩招,大学生人数越来越多,食堂里面的菜肴也变得五花八门,但学生每天都面临着不知吃什么的问题,当前学校食堂提供的服务满足不了学生多样化的需求.文章根据