基于Spring Boot+Vue的减肥健康管理系统设计和实现【原创】(BMI算法,协同过滤算法、图形化分析)

🎈系统亮点:图形化分析、BMI算法,协同过滤算法;

一.系统开发工具与环境搭建

1.系统设计开发工具


后端使用Java编程语言的Spring boot框架
项目架构:B/S架构
运行环境:win10/win11、jdk17


前端:
技术:框架Vue.js;UI库:ElementUI;
开发工具:Visual Studio Code;



后端:
技术:Java语言、mybatis plus、Spring boot框架;
开发工具:IDEA 2023.3.3版本;



数据库:
数据库:mysql5.7/8.0
数据库工具:Navicat12版本;


2.系统运行环境

  • Java运行环境:服务器安装Java17开发工具包,确保Spring Boot框架能够正常运行。JDK版本需与项目所依赖的版本相匹配。
  • 数据库管理系统:采用MySQL数据库管理系统,负责存储商城系统的所有数据,如商品信息、用户数据、订单记录等。确保数据的安全性和完整性。
  • 操作系统:支持主流的桌面操作系统Windows。
  • 浏览器:支持主流浏览器,Chrome。商城系统的前端页面需要在这些浏览器中正常显示和运行。

二.需求分析

2.1 功能需求

2.1.1 用户功能需求分析

1. 减肥科普:用户可以浏览丰富的减肥知识库,也可以进行评价交流。

2. 身体指标:用户可以记录和跟踪自己的体重,身高,血糖,腰围,血压等身体指标。

3. 每日计划:根据用户选择的计划,系统会生成个性化的每日饮食和运动计划。

4. 推荐食谱:系统提供多种健康美味的食谱餐谱。

5. 体重计划:记录用户的体重计划。

6. BIM计算:系统根据用户输入的身高和体重数据,自动计算出BMI值。

7. 完成情况:系统将记录用户的饮食摄入、运动量等活动的完成情况。用户可以查看自己的完成情况报告,包括图表和数据分析,以清晰地了解自己的进步和需要改进的地方。

8. 个人中心:用户可以在个人中心模块进行修改个人数据,可以查看自己的身体记录,减肥计划,身体指标计划,用户发表的话题管理以及收藏的话题。

2-1 用户用例图

2.1.2 管理员功能需求分析

1. 用户管理:管理员可以查看、添加、编辑和删除系统中的用户信息。

2. 封面管理:管理员可以上传、编辑和删除系统首页或特定页面的封面图片。

3. 食谱管理:管理员可以添加、编辑和删除系统中的食谱信息。

4. 减肥计划管理:管理员可以创建、编辑和删除针对不同用户的减肥计划。

5. 减肥话题管理:管理员可以发布、编辑和删除系统中的减肥话题或文章。管理员可以审核话题内容,确保其真实性和正面性。

6. 科普管理:管理员可以发布、编辑和删除关于减肥的科学知识、健康贴士等内容。

图2-2 管理员用例图


减肥管理系统主要分为两个角色,用户具有减肥科普,身体指标,每日计划,推荐食谱,体重计划,BIM计算,完成情况,个人中心功能。管理员具有用户管理,封面管理,食谱管理,减肥计划管理,减肥话题管理,科普管理功能。

三.系统实现

用户

1.登录界面

2.首页界面

详情界面

3.身体指标界面

4.体重计划

5.每日计划

6.完成情况

7.个人中心

7.1 我的个人信息

7.2 减肥计划

7.3 身体指标分析

7.4 身体计划

7.5 话题收藏

7.6 论坛

管理员

1.用户管理

2.减肥话题管理

2.1 减肥圈子

2.2 减肥话题

2.3 减肥评论

2.4话题浏览记录

3.食谱管理

四.数据库设计

1. 用户表

用户表用于存储用户的基本数据,主要包括用户主键,创建时间,创建人,密码,登录时间段,邮箱,角色,账号,手机号码,头像,出生年月,名称,体重,升高字段。

表3-1 用户表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

用户主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

Password

密码

varchar(512)

YES

-

LoginTimePeriod

登录时间段

varchar(512)

YES

-

Email

邮箱

varchar(512)

YES

-

RoleType

角色

int

YES

-

UserName

账号

varchar(512)

YES

-

PhoneNumber

手机号码

varchar(512)

YES

-

ImageUrls

头像

varchar(512)

YES

-

Birth

出生年月

timestamp

YES

-

Name

名称

varchar(512)

YES

-

W

体重

varchar(512)

YES

-

H

升高

varchar(512)

YES

-

2. 资讯表

资讯表用于存储资讯的基本数据,主要包括资讯主键,创建时间,创建人,标题,发表者,封面,文章内容,文章类型,上架状态,是否推荐字段。

表3-2 资讯表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

资讯主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

Title

标题

varchar(1024)

YES

-

Author

发表者

varchar(1024)

YES

-

ImageUrls

封面

varchar(1024)

YES

-

Content

文章内容

longtext

YES

-

ArticleTypeId

文章类型

int

YES

-

IsPutaway

上架状态

varchar(1024)

YES

-

IsRecommand

是否推荐

tinyint(1)

YES

-

3. 资讯收藏表

资讯收藏表用于存储用户收藏的资讯,主要包括资讯收藏主键,创建时间,创建人,收藏人,资讯字段。

表3-3 资讯收藏表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

资讯收藏主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

CollectUserId

收藏人

int

YES

-

ArticleInfoId

资讯

int

YES

-

4. 资讯评论表

资讯评论表用于存储用户对资讯的评论,主要包括资讯评论主键,创建时间,创建人,文章,评论内容,昵称,头像字段。

表3-4 资讯评论表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

资讯评论主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

ArticleInfoId

文章

int

YES

-

Content

评论内容

longtext

YES

-

NickName

昵称

varchar(512)

YES

-

HeadImage

头像

varchar(512)

YES

-

5. 资讯点赞表

资讯点赞表用于存储用户对资讯的点赞记录,主要包括资讯点赞主键,创建时间,创建人,点赞人,资讯字段。

表3-5 资讯点赞表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

资讯点赞主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

LikeUserId

点赞人

int

YES

-

ArticleInfoId

资讯

int

YES

-

6. 资讯浏览记录表

资讯浏览记录表用于存储用户对资讯的浏览记录,主要包括资讯浏览记录主键,创建时间,创建人,资讯,用户字段。

表3-6 资讯浏览记录表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

资讯浏览记录主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

ArticleInfoId

资讯

int

YES

-

UserId

用户

int

YES

-

7. 资讯类型表

资讯类型表用于存储资讯类型的信息,主要包括资讯类型主键,创建时间,创建人,资讯名称,封面字段。

表3-7 资讯类型表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

资讯类型主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

Title

资讯名称

varchar(512)

YES

-

ImageUrls

封面

longtext

YES

-

8. 封面表

封面表用于存储封面的信息,主要包括封面主键,创建时间,创建人,封面,备注,标题,跳转路径字段。

表3-8 封面表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

封面主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

ImageUrls

封面

varchar(512)

YES

-

Remark

备注

varchar(512)

YES

-

Title

标题

varchar(512)

YES

-

LinkUrl

跳转路径

varchar(512)

YES

-

9. 身体指标表

身体指标表用于存储封面的信息,主要包括身体指标主键,创建时间,创建人,体重,身高,BMI指数,血压,血糖,用户,腰围,体脂率字段。

表3-9 身体指标表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

身体指标主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

W

体重

double(20,5)

YES

-

H

身高

double(20,5)

YES

-

BMI

BMI指数

double(20,5)

YES

-

BP

血压

double(20,5)

YES

-

GLU

血糖

double(20,5)

YES

-

UserId

用户

int

YES

-

WaistCircumferenc

腰围

double(20,5)

YES

-

BodyFatPercentage

体脂率

double(20,5)

YES

-

10. 话题评论表

话题评论表用于存储话题的评论信息,主要包括话题评论主键,创建时间,创建人,话题,评论内容,昵称,头像,根评论,回复用户,发送用户字段。

表3-9 话题评论表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

话题评论主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

TopicId

话题

int

YES

-

Content

评论内容

longtext

YES

-

NickName

昵称

varchar(512)

YES

-

HeadImage

头像

varchar(512)

YES

-

RootCommentId

根评论

int

YES

-

TargetUserId

回复用户

int

YES

-

SendUserId

发送用户

int

YES

-

11. 评论点赞记录表

评论点赞记录表用于存储话题的评论点赞记录,主要包括评论点赞记录主键,创建时间,创建人,话题,点赞评论,点赞人字段。

表3-11 评论点赞记录表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

评论点赞记录主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

TopicId

话题

int

YES

-

CommentId

点赞评论

int

YES

-

UserId

点赞人

int

YES

-

12. 食谱表

食谱表用于存储食谱的信息,主要包括食谱主键,创建时间,创建人,名称,食谱内容,推荐起始体重,推荐截止体重,封面,推荐等级字段。

表3-12 食谱表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

食谱主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

Name

名称

varchar(512)

YES

-

Content

食谱内容

longtext

YES

-

RecommendedBeginWeight

推荐起始体重

double(20,5)

YES

-

RecommendedEndWeight

推荐截止体重

double(20,5)

YES

-

Cover

封面

varchar(512)

YES

-

RecoomendLevel

推荐等级

int

YES

-

13. 话题表

话题表用于存储话题的基本数据,主要包括话题主键,创建时间,创建人,标题,封面,主图,浏览数,内容,话题类型,审核状态,是否推荐,视频字段。

表3-13 话题表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

话题主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

Title

标题

varchar(512)

YES

-

Cover

封面

varchar(512)

YES

-

ImageUrls

主图

longtext

YES

-

ViewCount

浏览数

int

YES

-

Content

内容

longtext

YES

-

TopicTypeId

话题类型

int

YES

-

AuditStatus

审核状态

int

YES

-

IsRecommand

是否推荐

tinyint(1)

YES

-

VideoUrls

视频

varchar(255)

YES

-

14. 话题收藏表

话题收藏表用于存储话题的基本数据,主要包括话题收藏主键,创建时间,创建人,话题,收藏人字段。

表3-14 话题收藏表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

话题收藏主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

TopicId

话题

int

YES

-

UserId

收藏人

int

YES

-

15. 话题浏览记录表

话题浏览记录表用于存储话题的浏览记录数据,主要包括话题浏览记录主键,创建时间,创建人,话题类型,话题,浏览人字段。

表3-15 话题浏览记录表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

话题浏览记录主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

TopicTypeId

话题类型

int

YES

-

TopicId

话题

int

YES

-

UserId

浏览人

int

YES

-

16. 话题类型表

话题类型表用于存储话题的类型数据,主要包括话题类型主键,创建时间,创建人,名称,编码,封面,描述字段。

表3-16 话题类型表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

话题类型主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

Name

名称

varchar(512)

YES

-

Code

编码

varchar(512)

YES

-

Cover

封面

varchar(512)

YES

-

Content

描述

varchar(512)

YES

-

17. 减肥计划表

减肥计划表用于存储减肥计划数据,主要包括减肥计划主键,创建时间,创建人,计划,内容,整体难度,是否系统制订,开始日期,结束日期,用户字段。

表3-17 减肥计划表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

减肥计划主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

Name

计划

varchar(512)

YES

-

Content

内容

longtext

YES

-

Level

整体难度

int

YES

-

IsSystem

是否系统制订

int

YES

-

BeginDate

开始日期

timestamp

YES

-

EndDate

结束日期

timestamp

YES

-

UserId

用户

int

YES

-

18. 减肥计划明细表

减肥计划明细表用于存储减肥计划数据,主要包括减肥计划明细主键,创建时间,创建人,计划,用户,主题,内容,是否完成,打卡次数,开始时间,结束时间字段。

表3-18 减肥计划明细表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

减肥计划明细主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

WeightLossPlanId

计划

int

YES

-

UserId

用户

int

YES

-

Title

主题

varchar(512)

YES

-

Content

内容

longtext

YES

-

IsComplete

是否完成

tinyint(1)

YES

-

ClockCount

打卡次数

int

YES

-

BeginTime

开始时间

timestamp

YES

-

EndTime

结束时间

timestamp

YES

-

19. 减肥计划记录表

减肥计划明细表用于存储减肥计划记录,主要包括减肥计划记录主键,创建时间,创建人,计划,计划明细,打卡时间,用户字段。

表3-19 减肥计划记录表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

减肥计划记录主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

WeightLossPlanId

计划

int

YES

-

WeightLossPlanDetId

计划明细

int

YES

-

ClockTime

打卡时间

timestamp

YES

-

UserId

用户

int

YES

-

20. 减肥提醒表

减肥提醒表用于存储减肥提醒的基本信息,主要包括减肥提醒主键,创建时间,创建人,计划,计划明细,提醒时间,提醒标题,提醒内容,用户,邮箱字段。

表3-20 减肥提醒表

字段名称

字段含义

字段类型

是否为空

是否PK

Id

减肥提醒主键

int

NO

PK

CreationTime

创建时间

timestamp

YES

-

CreatorId

创建人

int

YES

-

WeightLossPlanId

计划

int

YES

-

WeightLoosPlanDetId

计划明细

int

YES

-

RemindTime

提醒时间

timestamp

YES

-

Title

提醒标题

varchar(1024)

YES

-

Content

提醒内容

varchar(1024)

YES

-

UserId

用户

int

YES

-

Email

邮箱

varchar(1024)

YES

-

编写制作不易,一键四连再走吧,您的支持永远是我最大的动力!


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/885352.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

TI DSP TMS320F280025 Note17:CMPSS原理与使用

TMS320F280025 模数转换器(ADC) ` 文章目录 TMS320F280025 模数转换器(ADC)CMPSS框图比较器参考斜坡发生器滤波器比较器应用CMPSSDriver.cCMPSSDriver.hEPWM与CMPSS配合使用信号流程EPWMDriver.cEPWMDriver.hCMPSS框图 所谓比较器,正端输入大于负端输入时,输出高;正端输入小…

启动 Ntopng 服务前需先启动 redis 服务及 Ntopng 常用参数介绍

启动Ntopng服务之前需要先启动redis服务,因为Ntopng服务依赖于redis服务的键值存储。 服务重启 服务启动 Ntopng常用参数: -d 将 Ntopng 进程放入后台执行。默认情况下,Ntop 在前台运行。 -u 指定启动Ntopng执行的用户,默认为…

基于Hadoop的NBA球员大数据分析及可视化系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码 精品专栏:Java精选实战项目…

Mysql 删除表的所有数据

在 MySQL 中,如果你想要删除一个表中的所有数据,可以使用 TRUNCATE TABLE 命令或者 DELETE 语句。下面是两种方法的对比以及如何使用它们: 使用 TRUNCATE TABLE TRUNCATE TABLE 是一个非常快速的方法来删除表中的所有记录,并且它…

MFU简介

1、缩写 MFU - Mask Field Utilization(光刻掩膜版有效利用比例) GDPW - Gross Die Per Wafer,每张wafer上die的数量 2、什么是MASK 在光刻机中,光源(紫外光、极紫外光)透过mask曝光在晶圆上形成图…

汽车总线之---- LIN总线

Introduction LIN总线的简介,对于传统的这种点对点的连接方式,我们可以看到ECU相关的传感器和执行器是直接连接到ECU的,当传感器和执行器的数量较少时,这样的连接方式是能满足要求的,但是随着汽车电控功能数量的不断增…

Ubuntu开机进入紧急模式处理

文章目录 Ubuntu开机进入紧急模式处理一、问题描述二、解决办法参考 Ubuntu开机进入紧急模式处理 一、问题描述 Ubuntu开机不能够正常启动,自动进入紧急模式(You are in emergency mode)。具体如下所示: 二、解决办法 按CtrlD进…

Ks渲染做汽车动画吗?汽车本地渲染与云渲染成本分析

Keyshot是一款强大的实时光线追踪和全域光渲染软件,它确实可以用于制作汽车动画,包括汽车模型的渲染和动画展示。Keyshot的动画功能允许用户创建相机移动、物体变化等动态效果,非常适合用于汽车动画的制作。 至于汽车动画的渲染成本&#xff…

golang小项目1-家庭收支记账系统

项目地址:golang小项目 参考资料:尚硅谷golang教程P229 家庭收支记账系统 1. 系统简介 1.1 项目背景 在现代社会中,家庭的财务管理显得尤为重要。随着生活成本的不断上升,家庭需要有效地记录和分析收支情况,以确保…

【C++打怪之路Lv4】-- 类和对象(中)

🌈 个人主页:白子寰 🔥 分类专栏:C打怪之路,python从入门到精通,数据结构,C语言,C语言题集👈 希望得到您的订阅和支持~ 💡 坚持创作博文(平均质量分82)&#…

权威人工智能行业认证证书——计算机视觉工程师(中级)

随着人工智能技术的快速发展,越来越多的人开始关注并学习人工智能。然而,由于人工智能领域知识的复杂性和多样性,许多人往往会感到困惑,不知道该从何入手。这时,一份权威的人工智能行业证书可以帮助学习者更好地了解人…

利用Puppeteer-Har记录与分析网页抓取中的性能数据

引言 在现代网页抓取中,性能数据的记录与分析是优化抓取效率和质量的重要环节。本文将介绍如何利用Puppeteer-Har工具记录与分析网页抓取中的性能数据,并通过实例展示如何实现这一过程。 Puppeteer-Har简介 Puppeteer是一个Node.js库,提供…

AI大模型技术已是中小企业数字化转型的战略资源

中小企业数字化转型面临资金、技术、数据隐私和安全等多重挑战,大模型技术的崛起为其提供了新的机遇。 大模型技术凭借庞大的参数和数据处理能力,推动行业创新,展现AI技术的巨大潜力。它提供成本效益高的AI服务,降低技术门槛&…

CMake教程(八):添加定制命令和生成的文件

本篇继续 CMake 官网教程的第八篇教程,所用材料是 Step8 目录下的源代码。 本篇教程主要讲解如何通过 CMake 生成一个头文件,该头文件当中包含了 1 到 10 的平方根表格,然后在程序的其它部分包含这个生成的头文件。 出于教学的目的&#xf…

OpenStack Yoga版安装笔记(十四)启动一个实例

1、官方文档 OpenStack Installation Guidehttps://docs.openstack.org/install-guide/ 本次安装是在Ubuntu 22.04上进行,基本按照OpenStack Installation Guide顺序执行,主要内容包括: 环境安装 (已完成)OpenStack…

三款专业的英文文献翻译工具,翻译论文不在话下

阅读英文论文文献时免不了要借用一些翻译软件来帮助理解,但因为论文文献的特殊性,普通的翻译软件不能很好的翻译一些专业名词和术语,所以这里给大家分享三款可以胜任文献翻译的专业翻译工具,可以快速准确的完成英文文献翻译工作。…

CSS选择器的全面解析与实战应用

CSS选择器的全面解析与实战应用 一、基本选择器1.1 通配符选择器(*)2.标签选择器(div)1.3 类名选择器(.class)4. id选择器(#id) 二、 属性选择器(attr)三、伪…

书生大模型实战(从入门到进阶)L3-彩蛋岛-InternLM 1.8B 模型 Android 端侧部署实践

目录 1 环境准备 1.1 安装rust 1.2 安装Android Studio 1.3 设置环境变量 2 转换模型 2.1 安装mlc-llm 2.2 (可选)转换参数 2.3 (可选)生成配置 2.4 (可选)上传到huggingface 2.5 (可选) 测试转换的模型 3 打包运行 3.1 修改配置文件 3.2 运行打包命令 3.3 创建签…

UEFI EDK2框架学习(三)——protocol

一、Protocol协议 搜索支持特定Protocol的设备&#xff0c;获取其Handle gBS->LocateHandleBuffer 将内存中的Driver绑定到给定的ControllerHandle gBS->OpenProtocol 二、代码实现 Protocol.c #include <Uefi.h> #include <Library/UefiLib.h> #includ…

宠物医院微信小程序源码

文章目录 前言研究背景研究内容一、主要技术&#xff1f;二、项目内容1.整体介绍&#xff08;示范&#xff09;2.系统分析3.数据表信息4.运行截图5.部分代码介绍 总结 前言 随着当代社会科技的迅速发展&#xff0c;计算机网络时代正式拉来帷幕&#xff0c;它颠覆性的影响着社会…