林圣峰 姚锦江 林涛 刘嘉校 田智卓 李超
作者简介:林圣峰(1995— ),男,广东湛江人,助理实验师,硕士研究生;研究方向:实验室技术与管理。
摘要:近年来,高校实验室的教学和科研活动日益频繁,这对实验室的管理工作不断提出新挑战。为合理优化配置高校实验室资源,文章提出了前后端分离架构的高校实验室管理系统的设计思路。系统基于SpringBoot + Vue框架,将实验室信息管理、数据处理智能交互等融为一体,设计与实现了实用的B/S架构管理系统,并进行了测试,测试结果显示稳定、流畅。系统具有操作简单、处理效率高等特点,可为高校实验室管理提供可靠、高效的解决方案。
关键词:实验室管理;Vue;SpringBoot;设计思路
中图分类号:TP311 文献标志码:A
0 引言
2023年,中共中央、國务院印发的《数字中国建设整体布局规划》指出,要在教育、能源等重点领域,加快数字技术创新应用,促进信息系统网络互联互通,业务高效协同。《中国教育现代化2035》提出要推动以互联网等信息化手段服务教育教学全过程。实验室是高校开展实践教学、科学研究、人才培养的重要场所。运用信息化手段管理实验室,为师生的实践教学提供更好的服务,给予师生在实践教学中更好的用户体验,减轻实验室管理员事务性工作量,提升实践教学质量[1]。新形势下实验室机房管理已经趋向于精细化、专业化和规范化,主要是以人工为主的传统实验室机房管理模式已不能适应当前的要求,积极引进新的管理理念、管理技术,对于提高实验室机房的实用性、安全性和管理效率至关重要[2-4]。本文通过问卷调查法、访谈调查等调研方法获取用户需求,并结合自身实验室信息化建设经验,设计与实现了高效的实验室管理系统。
1 需求调研与分析
深入调研当前计算机实验室管理工作现状是系统设计的基础。为满足技术和兼容性的要求,确保系统操作便捷,采用Vue.js + SpringBoot前后端分离架构思想,融入颇具创新的辅助功能。本文遵循“高内聚、低耦合”开发原则,充分运用分布式技术、数据仓库技术等现代互联网技术,开发了失物招领、公告通知、实验课程管理等功能。在系统设计方面,实现了多样化的交互页面与多维度的后台管理功能,以及高效处理业务、工作调度、数据管理与共享。
2 系统总体架构
对用户需求以及功能需求进行分析,将系统的各个功能模块进行梳理和分类。系统模块细分为首页模块、登录注册模块等多个功能模块(系统的功能如图1所示),并对这些模块功能进行详细的设计。此外,对数据库、数据库表结构和属性进行设计,为整个系统的开发奠定了基础。通过对系统总体架构规划,可使系统的设计与实现更加清晰,提高系统的可用性和稳定性。系统的总体架构由应用表示层、业务逻辑层、数据存储层3个层次组成[5]。
3 数据库设计
3.1 数据库工具
系统选用MySQL数据库。该数据库是一个关系型数据库管理系统,查询性能强大。通过后端Java框架集成Mybatis-Plus快速对接MySQL数据库,实现数据动态支持。MySQL支持多种存储引擎,支持多线程使用,功能非常强大,可以满足系统数据开发与存储需求。
3.2 数据库设计原则
数据库表分为垂直和水平切分,垂直分表是指将表结构按照字段切分,水平分表是指维持表设计不变,按照一定字段采取哈希或者其他规则让其水平切分到多个表结构的表当中[6]。常见的方式为水平分表,即把一张大的数据库表分为若干子表,以避免单表记录数超过阈值导致的性能急剧下降问题[7]。
数据库设计遵循统一性、简洁性和适应性原则。统一性要求将同一主题的数据存放在同一个数据表中,以确保数据的一致性和完整性;简洁性则是为了消除数据冗余,提高数据库访问速度,减少系统开销;适应性则是要考虑到数据表结构的灵活性,以应对系统数据的动态变化。
3.3 数据库表设计
根据设计原则与系统数据处理需求,本文设计了用户登录表、教师表、课程表、管理员值班表、房间管理员表、当前课程表、公告表、日志表、失物招领表、教师调课申请表10个数据库表。通过使用实体-联系图(Entity Relationship Diagram)来建立数据模型,系统的E-R图如图2所示。
4 系统功能模块实现
4.1 注册登录模块
用户注册需填写姓名、工号、手写签名(必填项)、学院等信息,填完后点击确认提交按钮,前端向后端发起axios请求,后端接口通过@RequestParam接收前端传来的数据,将注册信息存储到数据库中。如果注册信息填写不满足格式要求,则提醒注册失败。
用户在登录界面输入账号和密码后,点击登录按钮,前端会向后端发起Axios请求,后端接口通过@RequestBody接收前端传来的参数,并查询数据库中是否存在该用户。如果存在,后端会生成一个token返回前端,允许该用户进入相应系统。如果用户不存在,则提醒登录失败,并返回登录界面。
4.2 教师信息管理模块
进入后台信息管理系统后,用户点击教师信息管理界面,前端通过Axios请求后端接口,后端接口返回包含教师信息列表的JSON数据。前端提取数据后,采用分页形式渲染到界面上。若需删除某个教师信息,用户仅需点击删除按钮,会弹出删除确认弹窗。如果确认删除,前端通过Axios向后端请求删除教师信息接口,并将教师编号(tid)作为参数传递。后端根据 @RequestParam接收前端传过来的Tid,利用Mybatis-Plus的delete方法删除该教师数据。
4.3 调课审批模块
用户可通过系统的课程管理中的调课管理选项来完成调课操作。管理员可在管理端审核调课申请,使用Axios向后端发起请求并添加token值来获取相应的数据。后端会根据@RequestBody判断是否有冲突等情况,成功的话会返回JSON数据提示管理员。审批通过后,前端通过Axios向后端发送审批请求,并添加token值。后端根据 @RequestBody 判断是否满足条件,并在前端界面上提示是否调课成功。调课审批模块包括单节课程调课、节假日调课、调课日志查询和调课审批。管理员可在调课日志界面查询调课操作日志。
4.4 失物招领和公告模块
用户点击失物招领管理,前端Axios会请求后端的失物招领接口,将接收到的失物招领JSON数据展示在界面上。如点击添加按钮,左侧会有抽屉弹出,用户可在抽屉上填写失物招领信息,填写完点击添加按钮,前端执行Axios请求后端添加失物招领信息接口,同时headers会带上唯一标识token,后端接口通过@RequestBody 获取前端的数据,并将数据处理添加到数据库失物招领表。
4.5 课程信息模块
用户点击当天课表展示或每周课表展示,前端会向后端发送请求,请求返回一个包含JSON数据的响应。系统支持课表导入和导出功能,在上传课表时,点击“下载模板”按钮获得导入格式的Excel文件,修改后上传系统,后端使用XSSFWorkBook类读取Excel表格中每行的数据,并将其添加到指定的课程信息表中。导出功能通过,先进行模糊查询,再点击“导出”按钮,用户可以导出相应的数据。这一功能是采用前端的Excel导出技术table2excel实现的。
5 系统测试
系统采用黑盒测试方法,从输入数据与输出数据的对应关系出发,对管理系统各个模块的界面和功能进行单元测试,从用户角度解决存在的问题。为保证系统整体协调性,本文根据设计要求对软件进行了集成测试[8]。同时,利用PostMan测试后端接口返回数据是否跟预期一致。最后,对系统进行了压力测试、可靠性及安全性测试等系统测试。测试结果符合预期设计要求与技术要求。
6 结语
高校实验室是进行教学与科研的重要场所,而传统的实验室管理模式已不能适应发展的需求,本文基于SpringBoot + Vue框架,搭配MySQL数据库与Element-UI组件库设计了高校实验室管理系统,经投入使用,系统功能符合实际需求,包括失物招领、公告通知、实验课程管理、实验室值班人员管理、实验室使用登记等功能模块。经反复测试与优化,已成功部署并投入使用,实验室管理水平和实验设备利用率有显著提升,减轻了实验室管理人员的工作负担,在提高实验教学效率方面具有良好的应用前景,对实验教学过程的优化和整体工作流的提升有积极的推动作用。
参考文献
[1]邱坤,顾亦然,魏莉.高校文科实验室信息化管理系统的探究[J].实验技术与管理,2019(8):260-262.
[2]冀琳彦,李新冬,朱易春,等.高校实验室统一化管理模式的探讨[J].实验科学与技术,2012(2):161-163.
[3]曹蓓,徐圆圆,曹旭.医科院校实验室安全管理工作现状分析与建设探讨[J].实验室研究与探索,2019(4):286-290.
[4]孙小琪,孙杰,张鹏程.“互联网+”背景下创新复合型实验室建设探究[J].实验技术與管理,2019(8):256-259.
[5]胡勇祥.基于大数据驱动的智慧图书馆推送系统设计[J].现代电子技术,2020(20):102-104,108.
[6]谭鹏,朱艳辉,杨芸桦.分布式数据库访问层中间件的研究与实现[J].电脑知识与技术,2018(24):7-9.
[7]樊荣,郑刚,植耀玲.基于分表的闪电定位系统数据库设计[J].计算机应用,2021(增刊2):136-138.
[8]张彤.基于切片技术的应用软件集成测试方法研究[J].计算机仿真,2022(5):361-365.
(编辑 李春燕)
Design and implementation of university laboratory management system based on SpringBootLin Shengfeng, Yao Jinjiang, Lin Tao, Liu Jiaxiao, Tian Zhizhuo, Li Chao
(Guangzhou City Institute of Technology, Guangzhou 510000, China)
Abstract: In recent years, the teaching and research activities of university laboratories are becoming more and more frequent, which poses new challenges to laboratory management. In order to optimize the allocation of university laboratory resources, this paper puts forward the design idea of university laboratory management system with front-end separation architecture.Based on SpringBoot+ Vue framework, the system integrates laboratory information management, data processing and intelligent interaction, and designs and implements a practical B/S architecture management system. The test results show that the system is stable and smooth. The system has the characteristics of simple operation and high processing efficiency, and can provide a reliable and efficient solution for university laboratory management.
Key words: laboratory management; Vue; SpringBoot; design ideas