APP下载

基于微信小程序的高校学生发展记录系统设计

2023-08-23杨磊

电子制作 2023年14期
关键词:后台调用高校学生

杨磊

(江西软件职业技术大学,江西南昌,330000)

随着教育改革进程的持续推进,高校学生评价制度对人才培养的导向功能越来越显著,将现代技术应用于高校学生评价中,不仅是信息时代发展的客观需求,也是深化高校学生评价改革的必要举措。目前高校学生评价体系还存在测评过程不严谨、测评结果应用不科学等问题,评价育人效果还有提升空间,且操作系统尚无法满足新环境下高并发、高扩展、高集成的技术要求,并且已有系统多为封闭系统,不能较好实现系统兼容与扩容,给师生增加了额外工作量。鉴于此,根据工作实际有必要创建学生发展记录平台,从而分层建立学生发展数据。微信小程序是一种连接用户与服务的新型方式,为开发者提供了第三方开发接口,能够定制符合自身需求的程序平台,可在微信内被便捷获取与传播[1]。因此,基于微信小程序设计出一种高校学生发展记录系统,通过分解功能,开发相应的应用程序编程接口(Application Programming Interface,API),将功能视为独立化模块,在模块组合中实现系统的高耦合性与扩展性[2]。本系统涵盖大学生文化素养、品德素养、健康素养等过程性与发展性相结合的评价要素,能够实现全程记录每名学生的表现,为科学进行大学生发展评价提供了数据支撑,促进了大学生的个性化发展。

1 系统整体设计

■1.1 整体架构

系统采用面向资源架构(Resource Oriented Architecture,ROA)与面向服务架构(Service-Oriented Architecture,SOA)的数据底层结构,如图1所示。ROA面向高校学生全体,用户可通过微信小程序上传数据;SOA面向管理者,管理者通过后台进行数据管理,例如学生信息查询、数据导入等交互性操作[3]。系统整体分为展示层、管理层、服务层与数据层,如图1所示。

图1 系统整体架构

展示层包括微信小程序与管理员界面,分别使用Json与Wxss技术开发。管理层利用Adobe Flex平台,并调用其功能完成界面设计,界面功能主要包括后台数据处理,学生信息管理、上传信息管理等。框架采用Websocketmvc-springboot-starter,开发语言使用Javascript,同时开发相应的应用程序编程接口(Application Programming Interface,API),将功能视为独立化模块,在模块组合中实现系统的高耦合性与扩展性,以此满足微信小程序端和服务器端数据交互的需求[4]。服务层由富因特网应用程序(Rich Internet Application,RIA)搭建,该层作为系统整体架构的核心,具有不可替代的中间层功能。用户完在微信小程序完成操作后,服务器发出的HTTP请求进行数据处理,包括加载数据信息以及自主下载等,最终通过服务器成功向客户端传输处理后的结果。数据层基于MariaDB数据库与AGS技术,提供空间、属性、数据于一体存储的数据服务[5]。MariaDB数据库对数据的存储管理,当接收服务器处理任务后,运用相关组件提供功能,实现提取、分析、计算、处理各类数据,最终向服务器传输结果,并向用户反馈相应界面。如果客户端产生查询需求,且涉及分布式数据,那么还会向远程服务器发送处理请求。

■1.2 功能设计

系统根据功能差异分为用户与管理员,用户群体为高校学生。根据高校学生评价标准,创建分层化的高校学生发展记录数据,系统设计涵盖大学生文化素养、品德素养、健康素养等过程性与发展性相结合的评价要素。管理员根据权限差异分为管理员、辅导员与班级管理者三类角色,管理员拥有最高权限,辅导员管理本年级学生,班级管理者负责本班学生。系统功能如图2所示。

图2 系统功能

■1.3 模块设计

1.3.1 登录

用户打开小程序后加载App.js文件,弹窗提示使用个人信息,点击同意后运行WxLogin方法,获得标识Open ID与版本信息SessionKey,执行成功后携带Open ID,使用Get方法调用API,与后端数据开始交互,小程序端根据结果进行判断并进入相应页面。

1.3.2 提交

高校学生发展记录系统录入的信息量较大,为了减少代码量,提升小程序使用效率,可将提交功能放于Eteringinformation文件,各类记录内容通过EnteringInformation?id=class调用。将数据放于Data内,携带Open ID请求后台,后台处理后反馈结果,小程序根据结果进行判断[6]。

1.3.3 排名

使用Get方法调用API,从数据库中获取排名,后端通过Open ID查找用户,并传递该班学生完成情况,根据百分比进行排名,同时显示进度条。

2 系统软件设计

■2.1 参数设计

为了使系统的可读性与可操作性得到提升,不同终端对URI参数也有着差异化的加载形式,例如:

前端调用时采用Key=Value的形式,模板可表示为:

API.Example.com/{Resource}?{Key1=Value1}

前端调用异步Java Script和XML(Asynchronous Java script And XML And HTML,AJAX)时,参数采用string对象的形式构造,模板可表示为:

“Key1”:“Value1”,

“Key2”:“Value2”,

{“Key2_1”:“Value2_1”},

{“key1_2”:“value1_2”},

后台调用API时,参数通过数组形式进行传递,模板可表示为:

“Key1”=>“Value1”,

“Key2”=>“Value2”,

“Key2_1”=>“Value1_1”,

“Key1_2”=>“Value2_1”

例如在超文本预处理器(Hypertext Preprocessor,PHP)中使用curl函数调用时,可通过设定参数进行传递:

Curl_Setopt(Curlopt_Postfields);

■2.2 标识设计

在Restful风格之中,使用资源特定名字作为统一资源标识符(Uniform Resource Identifier,URI),并设计与资源特征符合的控制器与模型类。控制器选用BMA253,该设备能够有效处理API调用逻辑;模型类主要用于处理数据库操作。根据高校学生发展信息涉及数据,将标识设计为表1。

■2.3 表述设计

表述是一种资源展示形式,即用户发起请求后Web服务器反馈结果的数据格式,目前较为常用的数据格式包括string、undefined、object等。因string数据具有易压缩、多后台语言支持、传输速度快、数据量小等特点,因而使用string数据作为参数传递、反馈数据的格式[7]。在本研究中,资源表述主要包括参数、状态以及反馈结果,即Web服务器执行调用后,反馈结果涵盖请求参数、执行状态等内容。

“Params”:{

“Location”:“位置”,

“Page”:1,

“Limit”:10,

“Appid”:“D93a5d”,

}

“Request”:{

“Code”:200,

“Message”:“Ok”,

}

“Return”:{

}

“Name”:“姓名”,

“Location”:{

“Lat”:23.775743,

}

“Street_id”:“638df60a54f2126b3lafe57e”,

}

■2.4 缓存设计

缓存设计可实现系统的快速响应,在软件设计时,通过临时缓存模式,对某时刻高执行频率的API,将其结果保存于硬盘上。具体策略是对查询资源缓存,将Md5值设为文件名,并将结果保存为string之后进行压缩,如果出现相同请求时返回string文件。

■2.5 数据库设计

本系统采用MariaDB数据库,运行环境由Nginx搭建。MariaDB数据库拥有Maria存储引擎与FederatedX存储引擎,其运行速度快,支持对Unicode的排序,操作更加便捷。使用Nginx搭建运行环境,搭建一次便可长期使用,无需重复进行数据库连接,能够显著提高系统运行效率。

2.5.1 连接

系统通过Nginx将PHP作为服务器中的特殊功能模块,使用MariaDB扩展进行连接,成功连接后系统后端能够直接进行数据库的查询、修改以及删除操作。与其他数据库连接相比,MariaDB扩展能够进行多语句执行,其处理机制也基本解决了注入问题。

2.5.2 逻辑层

根据学生发展平台的功能需求,系统数据库包括管理员表、学生信息表、预制用户表、汇报记录表等数据库,具体关联如图3所示。

图3 数据库逻辑

3 系统实验

■3.1 后台测试

系统后台管理功能是便于管理与进行系统维护与后台管理,主要包括管理员、年级管理、班级管理、学生个人管理等,其功能实现程序图4所示。

图4 后台管理功能实现

■3.2 通信测试

超文本处理器(PHP: Hypertext Preprocessor)是一种动态网页技术,能够提供便捷的构建形式[8]。在高校学生发展记录系统中,当用户在小程序中操作时,小程序会向Web发Https请求,此时调用PHP,PHP收到请求并验证Md5值通过后,PHP与数据库连接执行相应操作,完成后将结果返回到客户端,具体流程如图5所示。

图5 通信逻辑

4 结语

综上,在需求分析的基础上,基于微信小程序设计出高校学生发展记录系统。该系统采用Json、Wxss、JavaScript、MariaDB以及PHP等多项开发技术,实现了微信小程序前端与Web后端的功能融合。在微信小程序端实现信息录入、发展汇总、进度展示等功能。在Web后端实现信息管理与平台维护。实践表明,基于微信小程序的高校学生发展记录系统实现了全程监控每个学生的表现情况,学生通过小程序可随时记录个人发展数据,并能及时了解自己的排名情况与任务完成情况。同时也便于高校掌握学生的整体表现,提升对学生评价的客观性与科学性。可度量、持续化的记录平台的创建,可显著提高系统的耦合性与扩展性,能够为高校学生提供良好的个人发展评价服务,为便捷地进行高校学生发展评价提供有力的数据支撑。在后续研究中可根据需求继续扩展其他功能模块,从而不断完善本系统。

猜你喜欢

后台调用高校学生
高校学生党支部建设及作用发挥探索
高校学生意外伤害事件应对与处理
核电项目物项调用管理的应用研究
LabWindows/CVI下基于ActiveX技术的Excel调用
后台暗恋
基于系统调用的恶意软件检测技术研究
小议高校学生违纪处分制度
前台、后台精彩花絮停不了
关于高校学生工作的思考
以“后台”的名义节省电池用量