高義景,王永盛,喬雨(通訊作者)
(南京工業大學浦江學院,江蘇南京,211200)
隨著社會逐漸進入信息化時代,網絡已成為人們生活中的重要組成部分,在享受互聯網為生活帶來便捷的同時,網絡也越來越多的擠占人們的業余時間。這種現象在當代大學生中表現得尤為明顯,導致學生沒有時間也沒有動力走出室內,到戶外進行足夠的體育鍛煉[1]。
為了激發人們的健康鍛煉和健康生活的意識,運動軟件便應運而生。這類軟件通過實時地記錄用戶的運動數據和身體指標來反映用戶當前的運動表現,并且在運動軟件中融入了社交的功能,進一步地鼓勵人們去主動地關注自我的身體狀態。本文基于這一角度,提出了大學校園范圍內的個人健康管理平臺,通過將大學體育課和學生個人課外運動的數據記錄到數據庫,后臺進行數據分析,為學生的體質健康給出提示,并給出相關的運動和飲食建議,從而提升大學生對個人體質健康的關注度[2]。本系統提供如身體質量指數BMI的參考指標等供用戶參考。
基于數據庫技術的大學生健康管理平臺是利用數據庫技術對學生的運動數據進行結構化管理,將處理過的數據進行可視化,展現給學生用戶。本系統采用具有較好的獨立性和安全性的B/S 架構于SSM 框架技術,結合Web 開發及React 前端技術進行設計與開發。用戶通過Web 段登錄,可以自主地錄入個人運動的情況,并查看系統分析后給出的運動狀態指標和飲食建議。
基于數據庫技術的大學生健康管理平臺采用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(用戶飲食記錄表)
首先,系統前端的實現利用了React 框架來構建UI,通過在React 中傳遞多種類型的參數,幫助渲染UI 界面、靜態HTML DOM 元素、傳遞動態變量等。其次,后端代碼使用Spring Boot 作為開發框架,該框架能夠提供控制反轉特性的容器,通過依賴注入實現控制反轉來將對象生命周期容器化,從而實現持久化的數據訪問。
系統的前后端數據交互是利用輕量級的Axios 來實現Ajax 異步通信,相較于傳統的Ajax 配置和操作的復雜程度[4],Axios 在降低復雜度的同時也能實現直接在node.js 中發送http 請求。數據管理的分頁功能則是采用MyBatis 的分頁插件PageHelper,首先在插件PageHelper 中分裝好SQL語句,再由MyBatis 讀取封裝好的SQL 語句,從而實現數據的分頁效果。
本系統在設計的過程中按照設計的簡便性、實用性以及準確性要求,對系統的功能模塊及具體實現進行了詳細的設計,主要功能包括(如圖1 所示):用戶及管理員的注冊和登錄模塊、用戶個人信息管理模塊、運動數據可視化展示模塊和健康飲食的建議管理。

圖1 系統功能模塊圖
本系統主要包括平臺用戶的登錄注冊功能,個人信息的管理以及對運動數據和飲食食品數據的管理和查看,具體說明如下:
(1)登錄和注冊功能:針對管理員和學生的不同的用戶角色,系統給與不同的功能權限,學生可以申報自己最新的運動數據并查看已有的信息,但是對于平臺提供的健康數據分析以及飲食的建議只有可查看的權限;管理員角色的賬號只能是由超級管理員進行分配,不提供自行注冊的功能,只可登錄已分配的賬號,進入系統后可以查看學生的運動相關的數據,同時可以實時發布通知公告等。
(2)個人信息管理功能:在這部分功能里,用戶可以對自己的登錄信息進行管理,比如用戶可以自行修改自己的登錄名、密碼、個人頭像等。同時,系統也能夠為用戶的信息提供可靠的信息服務,確保在用戶名和密碼均輸入正確的情況下才能正常登錄系統,進而使用系統的功能,否則將給出登錄失敗的提示;當連續三次輸入有誤時,系統將對該賬戶進行限定時間后登錄,通過這樣的措施來保證系統的可靠性和可用性。
(3)運動數據管理功能:學生用戶在登錄系統后可以上傳自己的運動數據,在確認前可以修改已經提交的數據,確認后系統將會對數據進行處理分析,并將分析后的數據按類別進行可視化展示。
(4)飲食建議模塊功能:本系統首先對用戶提交至系統的運動和飲食數據進行統一管理,并利用Echarts 對數據進行可視化展示。Echarts 是一個純JavaScript 圖標庫,它能夠兼容絕大部分的瀏覽器,底層依賴canvas 類庫中的ZRender,能夠方便直觀地提供具有生動性、可交互的個性化圖表,在本項目中實現如圖2 所示。此外,此模塊的功能會結合運動項目和食物本身的特點與用戶運動數據之間的聯系,綜合給出飲食方面的建議,供學生日常生活參考。

圖2 數據處理后展示示例
本系統是基于“做陽光下的大學生”的活動背景下設計的一款針對大學生健康運動和飲食的平臺,針對目前大學生的體質體能數據,利用數據庫技術進行數據的可視化管理,并對數據進行分析,并進一步地給出具有針對性的運動和飲食建議,從而達到鼓勵大學生“放下手機,擁抱自然”的積極性,提升大學生增強自我體能鍛煉的意識。