基于JSP的MVC高职开放型实验管理系统的 设计和实现

2023-10-31 06:58朱宏涛
信息记录材料 2023年9期
关键词:开放型仪器设备逻辑

朱宏涛

(新疆应用职业技术学院 新疆 奎屯 833200)

0 引言

目前,传统手工实验管理方式已不能很好满足当下的需要,很多高职院校开始尝试实验开放模式。在这种背景下,本文使用JSP、MVC及B/S模式设计的开放型实验管理系统采用模块化设计,将系统划分成系统管理、门禁管理、教师管理、实验管理和仪器管理等5大模块,是一个面向全体师生的开放共享平台,大大提高了大型实验设备利用率与办学水平。

1 开放型实验管理系统建设目标

目前,实验室管理主要存在实验室不能共享、晚上值班难度大、教学资源无法共享、实验仪器设备易损坏等问题。就以上问题进行深入分析,本文设计的开放型实验管理系统应具备:学生可网上在线预约实验室,可实时查看实验室或实验仪器设备使用情况;监控、门禁考勤系统实时记录学生在实验室的活动情况及出入实验室的时间;文件、文档、视频等资源上传和下载功能;在线提问与答疑等功能[1]。由于开放型实验管理系统需要联合门禁系统,并要与门禁系统进行实时数据交互,因此,系统需要具有良好的大数据并发处理能力及一定的安全性与可靠性。

2 系统设计的关键技术

2.1 MVC开发模式

MVC开发模式即模型-视图-控制器模式,将数据层和表示层很好地分离,可给相同的数据提供多样化的视图。MVC模式将开放型实验管理系统划分为Model(模型)、View(视图)及Controller(控制器)这3部分。Model类位于数据层,主要实现管理系统的数据逻辑和业务逻辑;View类位于表现层,向用户展示带有数据的页面;Controller类位于服务层,主要用于流程控制。MVC较好地实现了数据逻辑、业务逻辑、控制逻辑及显示逻辑的相互独立,将数据表现和数据访问分离开来,从而实现面向实际应用设计显示逻辑与控制逻辑,面向系统业务设计数据逻辑及业务逻辑[2]。

2.2 JSP的MVC开发模式

JSP是一种标准技术,使创建动态Web页面更加便利、简洁,在Web服务器上解析通过表单传递的数据,使用适当的逻辑转换为标准的HTML页面,而后用户在客户端看到的就是一个带相应数据的标准HTML页面[3]。基于JSP的MVC体系结构联合使用Servlet容器和JSP技术来提供动态内容服务,综合利用了这2项技术的优势,利用JSP展现表示层的内容,使用Servlet进行深层次的任务处理。其中,Servlet作为控制器,用于处理用户请求,创建JSP所需对象,根据用户请求将带有相应数据的JSP页面响应给用户[4]。这种设计方式将内容和表达分离,让角色定义、网页设计及开发人员的分工等都更加明确清晰,JSP的MVC体系结构如图1所示。

图1 JSP的MVC体系结构

3 系统结构和功能

3.1 系统结构

开放型实验管理系统依照模块化进行设计,主要有管理员、学生和老师3种角色,有系统管理、门禁管理、教师管理、实验管理和仪器管理等5大模块,实现了基础数据、实验预约、在线答疑、仪器设备预约、门禁管理、权限管理、发布公告等功能。开放型实验管理系统的结构如图2所示。

3.2 系统功能模块

3.2.1 实验管理

实验管理模块实现了实验预约、实验查询、实验资源下载、实验室预约,以及在线提问等功能。教师可在线添加实验相关的学习资源,如电子文档、实验操作流程视频、相关资料等,这些资源可供学生下载或是在线查看浏览。其中,实验预约是开放型实验管理系统的核心功能,通过实验预约功能,学生可以自主科学地安排实验时间,调动了学生自主性和学习积极性,同时提高了实验仪器设备的利用率。在实验预约时,开放型实验管理系统会自动完成学生上课时间冲突、实验室占用冲突等冲突检查,当实验预约不存在冲突,学生可进行预约并在约定时间内到达相应实验室完成实验即可。

3.2.2 仪器管理

仪器管理主要有仪器设备预约、仪器维修管理、贵重仪器设备管理,以及仪器设备使用记录等功能。学生预约实验绝大多数情况下,使用预约功能来预约实验所用仪器设备,这一功能实现仪器设备的科学管理,最大限度地满足学生的需要,同时提高了实验仪器的使用效率。

3.2.3 门禁管理

学生提前网上预约好实验项目及实验时间后,在约定时间可凭借本人校园卡进入相应实验室,实验完成后可刷校园卡通过门禁离开。门禁管理模块实时显示所有门禁IP、地址等详细信息,并提供重启和远程开启、关闭的功能,门禁与开放型实验管理系统一直保持连接并完成数据和通信交互。

3.2.4 系统管理

系统管理实现了公告发布、操作日志、用户管理、权限管理,以及数据库备份与还原等功能。另外,在系统管理模块还可以对学生访问实验室的时间及人流量进行统计和分析,并以柱形图等图表进行呈现。同时通过对这些数据分析,可以进一步科学合理安排实验室开放层次、开放对象及开放时间等。

3.2.5 用户管理

用户管理模块包含学生、管理员及教师的管理,管理员拥有最高最多权限,部分权限是教师和管理员共有,开放实验管理系统可通过用户提供的账号密码来判识登录人员的身份,并根据相应权限跳转到对应界面。

3.2.6 考勤模块

考勤模块用来记录考生参加实验的具体情况,可查询某一学生或全部学生某时间段的实验预约和完成情况,考勤模块联合门禁系统记录学生进入和离开实验室的时间。

4 管理系统的实现

4.1 数据库设计

开放型实验室管理系统使用MySQL作为数据库服务器,MySQL数据库是当下主流关系型数据库管理系统之一,具有免费开源、速度快、体积小、成本低等优点,在中小型Web开发中应用广泛[5]。数据库设计影响着管理系统的性能,如果设计时考虑不够全面或结构设计不合理,一方面会增加软件编程工作难度,另一方面会增加后续管理系统的升级与维护的难度。为了使开放型实验室管理系统更加契合使用者需求,本管理系统着重对核心表结构进行了设计,主要有实验项目预约表、设备登记表、实验报告表、学生信息管理表及通知公告表等表。同时,在数据表之间依照实际情况建立关联性以实现数据库设计的最小冗余。例如:学生信息管理表的主键stu_ID和实验项目预约表的字段stu_ID具有一对一映射关系,因此将实验项目预约表中的stu_ID设置为外键,由此通过多表联查,根据输入的stu_ID值或是学生名称等可查询到该同学预约了哪些实验项目。其他的表也是根据这一原则进行了设计。

4.2 管理系统实现

开放型实验管理系统的开发环境为Win10 64位操作系统,使用MySQL 8.0作为数据库,开发工具使用IDEA,使用Tomcat 9.0服务器。由于C/S模式具有“瘦服务器-胖客户端”的弊端,为了避免这一问题,本实验管理系统采用B/S结构,不需要分别编写服务器端程序和客户端程序,仅需要重点关注实现服务器端程序即可[6]。使用者不需要安装相应的客户端程序,在电脑上任一浏览器都可以访问系统并在权限内进行操作。服务器端采用Java EE技术,这一技术面向对象,具有跨平台、开源免费的特点,自带GC(垃圾回收机制)从而很好地避免内存泄漏的问题。

4.2.1 表示层

表示层是开放实验室管理系统向用户提供的一个交互界面,界面设计是否简洁、美观直接影响用户体验。这一层几乎没有业务逻辑与流程控制,专注页面展现、数据呈现,不能直接访问数据,常使用CSS+DIV来实现页面布局,通过Bootstrap前端框架和jQuery框架完成实验预约、用户登录、资源上传/下载等界面设计,主要负责接收前台表单的数据,将数据传递给业务逻辑层,并将返回的逻辑数据组成标准HTML页面呈现给用户。

4.2.2 业务逻辑层

业务逻辑层作为开放实验管理系统的核心组成部分,使用Spring框架处理业务逻辑方法和传递数据,这一框架使用接口与实现分离技术,具有良好的扩展性[7]。当学生需要预约实验项目时,在实验预约界面选择合适的时间段,选择要预约的实验项目并点击预约,预约完成后可在实验预约情况列表查看预约详细情况,并在预约时间到达实验室完成实验,实验预约的完整业务流程如图3所示。

图3 实验预约流程

4.2.3 数据访问层

数据访问层也是持久层,这一层的功能是将数据持久化到数据库并根据实际要求对数据进行操作。持久层选用支持ORM模式的hibernate框架,在数据库模型和对象模型之间建立对应关系,同时将对底层数据库具体操作细节进行封装,向业务逻辑层仅提供API调用接口[8]。数据访问层不依赖于逻辑层,具有良好的独立性,这有效降低了模块之间的耦合性,使用了Java面向对象的思想,大大提高了开发效率。

4.2.4 系统的工作流程

以学生查询某一实验项目为例,简要概述使用JSP的MVC开放实验管理系统的工作机制。根据实验项目查询功能需求,已经设计好相应类并实现了实验项目查询功能,当学生在搜索框中填写相应实验项目编号来查询该实验项目的详细内容时,开放实验管理系统会进行如下步骤:首先,学生输入实验项目编号向Servlet发送查询请求;再次,Servlet接收用户请求,获取地址栏中的请求参数,在Handlers列表中查找处理这类请求的Handler,找到后要求Handlers提供一个用于查询实验项目的QueryProjectHandler来处理用户请求;接着,QueryProjectHandler根据传递过来的参数来进行相应业务逻辑处理,调用DataManager中的查询函数对数据库进行查询操作,查询完成后,将返回的数组数据封装成ProjectDAO实例,这些对象实例经一定处理后再封装到预先定义的QueryResultViewBean中并由Handler组装和返回给Servlet;最后,Servlet将数据呈现在标准的HTML页面上并返回给用户。

4.3 功能模块实现

4.3.1 开放实验模块

开放实验模块是实验管理中的核心功能,也是开放型实验管理系统的基础功能。这一模块服务对象主要是学生,具有个人课程表、开放实验查询、开放实验预约、实验资料下载及实验报告提交等功能。开放实验体现在实验项目的开放,其主要步骤如下:

步骤1 老师发布开放的实验项目并对开放中的实验项目进行维护,同时向系统上传开放的实验项目大纲及实验相关学习资料;

步骤2 教务处或管理员向各实验室和全体师生发布实验任务公告,各实验室开放实验预约,学生按照自己实际情况合理安排实验时间,在规定时间范围内完成实验;

步骤3 老师或相关管理人员审核实验预约,若没有问题则同意实验预约并公布预约结果;

步骤4 学生依预约完成试验后,完成相关实验报告并上传提交,在老师查看完成后可以查询实验成绩。

4.3.2 仪器设备模块

仪器设备模块是开放型实验管理系统的另一重要模块,包含大型贵重仪器设备管理与仪器设备管理,仪器设备管理的内容有入库、领用、台账、领用、报损及维修等,对于贵重仪器设备多增加了仪器设备信息共享和运行记录2项,上述管理均通过登记、调整申请、审核及结果查询等进行管理。

5 总结

综上所述,本文设计的开放性实验管理系统利用多种先进技术实现了高职院校实验教学信息化管理,有效解决了资源利用低、实验管理与维护成本较高及实验室管理封闭等问题。另外,使用开放型实验管理系统一方面实现了学生灵活使用实验室和实验仪器设备,另一方面降低了教师的管理强度,提高了实验室信息化水平。开放型实验管理系统在高职院校大范围投入使用,加快了我国高职院校信息化建设步伐,优化了实验设备仪器的资源配置,提高了资源使用效益与实验教学质量。

猜你喜欢
开放型仪器设备逻辑
刑事印证证明准确达成的逻辑反思
打好“侨”牌,稳中有为——打造江苏开放型经济的“重要窗口”
江苏巩固拓展高质量发展开放型经济的新态势
逻辑
创新的逻辑
高校仪器设备维修管理工作探讨
上海航征仪器设备有限公司
女人买买买的神逻辑
内陆开放型经济区人力资源管理的重难点及其对策:以宁夏内陆开放型实验区为例
基于能力培养自制实验仪器设备