APP下载

基于数据库技术的大学生健康管理平台

2021-06-16高义景王永盛乔雨通讯作者

电子制作 2021年6期
关键词:可视化数据库饮食

高义景,王永盛,乔雨(通讯作者)

(南京工业大学浦江学院,江苏南京,211200)

0 引言

随着社会逐渐进入信息化时代,网络已成为人们生活中的重要组成部分,在享受互联网为生活带来便捷的同时,网络也越来越多的挤占人们的业余时间。这种现象在当代大学生中表现得尤为明显,导致学生没有时间也没有动力走出室内,到户外进行足够的体育锻炼[1]。

为了激发人们的健康锻炼和健康生活的意识,运动软件便应运而生。这类软件通过实时地记录用户的运动数据和身体指标来反映用户当前的运动表现,并且在运动软件中融入了社交的功能,进一步地鼓励人们去主动地关注自我的身体状态。本文基于这一角度,提出了大学校园范围内的个人健康管理平台,通过将大学体育课和学生个人课外运动的数据记录到数据库,后台进行数据分析,为学生的体质健康给出提示,并给出相关的运动和饮食建议,从而提升大学生对个人体质健康的关注度[2]。本系统提供如身体质量指数BMI的参考指标等供用户参考。

1 需求描述

基于数据库技术的大学生健康管理平台是利用数据库技术对学生的运动数据进行结构化管理,将处理过的数据进行可视化,展现给学生用户。本系统采用具有较好的独立性和安全性的B/S 架构于SSM 框架技术,结合Web 开发及React 前端技术进行设计与开发。用户通过Web 段登录,可以自主地录入个人运动的情况,并查看系统分析后给出的运动状态指标和饮食建议。

2 数据库设计

基于数据库技术的大学生健康管理平台采用MySQL 作为数据库管理系统,MySQL 是目前最流行的关系型数据库之一,具有体积小、速度快、开源等特点,在Web 开发方面得到了广泛的应用[3]。

根据需求分析阶段的讨论,本系统的数据库共包含五张表,分别为user(用户表)、food(食品表)、sport(运动表)、user_food_history(用户饮食记录表)和user_sport_history(用户运动记录表),分别如表1 至表5 所示。

表1 user(用户表)

表2 sports(运动表)

表3 food(食品表)

表4 user_sport_history(用户运动记录表)

表5 user_food_history(用户饮食记录表)

3 系统设计

首先,系统前端的实现利用了React 框架来构建UI,通过在React 中传递多种类型的参数,帮助渲染UI 界面、静态HTML DOM 元素、传递动态变量等。其次,后端代码使用Spring Boot 作为开发框架,该框架能够提供控制反转特性的容器,通过依赖注入实现控制反转来将对象生命周期容器化,从而实现持久化的数据访问。

系统的前后端数据交互是利用轻量级的Axios 来实现Ajax 异步通信,相较于传统的Ajax 配置和操作的复杂程度[4],Axios 在降低复杂度的同时也能实现直接在node.js 中发送http 请求。数据管理的分页功能则是采用MyBatis 的分页插件PageHelper,首先在插件PageHelper 中分装好SQL语句,再由MyBatis 读取封装好的SQL 语句,从而实现数据的分页效果。

■3.1 功能模块划分

本系统在设计的过程中按照设计的简便性、实用性以及准确性要求,对系统的功能模块及具体实现进行了详细的设计,主要功能包括(如图1 所示):用户及管理员的注册和登录模块、用户个人信息管理模块、运动数据可视化展示模块和健康饮食的建议管理。

图1 系统功能模块图

■3.2 功能模块实现及说明

本系统主要包括平台用户的登录注册功能,个人信息的管理以及对运动数据和饮食食品数据的管理和查看,具体说明如下:

(1)登录和注册功能:针对管理员和学生的不同的用户角色,系统给与不同的功能权限,学生可以申报自己最新的运动数据并查看已有的信息,但是对于平台提供的健康数据分析以及饮食的建议只有可查看的权限;管理员角色的账号只能是由超级管理员进行分配,不提供自行注册的功能,只可登录已分配的账号,进入系统后可以查看学生的运动相关的数据,同时可以实时发布通知公告等。

(2)个人信息管理功能:在这部分功能里,用户可以对自己的登录信息进行管理,比如用户可以自行修改自己的登录名、密码、个人头像等。同时,系统也能够为用户的信息提供可靠的信息服务,确保在用户名和密码均输入正确的情况下才能正常登录系统,进而使用系统的功能,否则将给出登录失败的提示;当连续三次输入有误时,系统将对该账户进行限定时间后登录,通过这样的措施来保证系统的可靠性和可用性。

(3)运动数据管理功能:学生用户在登录系统后可以上传自己的运动数据,在确认前可以修改已经提交的数据,确认后系统将会对数据进行处理分析,并将分析后的数据按类别进行可视化展示。

(4)饮食建议模块功能:本系统首先对用户提交至系统的运动和饮食数据进行统一管理,并利用Echarts 对数据进行可视化展示。Echarts 是一个纯JavaScript 图标库,它能够兼容绝大部分的浏览器,底层依赖canvas 类库中的ZRender,能够方便直观地提供具有生动性、可交互的个性化图表,在本项目中实现如图2 所示。此外,此模块的功能会结合运动项目和食物本身的特点与用户运动数据之间的联系,综合给出饮食方面的建议,供学生日常生活参考。

图2 数据处理后展示示例

4 小结

本系统是基于“做阳光下的大学生”的活动背景下设计的一款针对大学生健康运动和饮食的平台,针对目前大学生的体质体能数据,利用数据库技术进行数据的可视化管理,并对数据进行分析,并进一步地给出具有针对性的运动和饮食建议,从而达到鼓励大学生“放下手机,拥抱自然”的积极性,提升大学生增强自我体能锻炼的意识。

猜你喜欢

可视化数据库饮食
数据可视化设计在美妆类APP中的应用
老人饮食应如“羊啃草”
思维可视化
警惕服药期间的饮食禁忌
复变函数级数展开的可视化实验教学
复变函数级数展开的可视化实验教学
复变函数共形映射的可视化实验教学
复变函数共形映射的可视化实验教学
数据库
健康饮食