计算机毕设Springboot家庭食谱推荐系统j983k9b0
(配套有源码 程序 mysql数据库 论文)本套源码可以先看具体功能演示视频领取,文末有联xi 可分享
在现代社会,随着生活节奏的加快和健康意识的增强,家庭烹饪面临着越来越多的挑战。家庭成员往往因为不同的口味偏好、营养需求、健康状况或是食材限制而难以找到合适的菜肴选择。每日的餐点筹备对于家庭主厨来说是一项费时费力的任务,尤其是在寻求平衡营养与口感、尝试新菜式以及适应不断变化的饮食趋势时。开发一个能够帮助家庭用户高效地找到适合自己家庭状况的食谱推荐系统变得尤为重要。这样的系统能够为用户提供个性化的食谱建议,节省他们的时间和精力,同时确保饮食的多样性和健康性。
文档重要内容
家庭食谱推荐系统是一款旨在帮助用户根据家庭成员的口味偏好、营养需求和食材限制来提供个性化食谱的服务。该系统通过简单易用的界面让用户输入特定条件,如烹饪时间、食材选择和健康目标等,然后从丰富的食谱数据库中筛选出合适的菜谱。系统还提供智能提示和调整建议,使用户能够轻松修改食谱以适应手头上的食材或满足特定的饮食要求。用户还可以评价和保存他们喜欢的食谱,以便日后再次使用。
系统主要分为管理员、营养师和用户三个角色,各自拥有不同的权限。管理员可以进行个人中心、用户管理、营养师管理、菜品社区管理、今日食谱管理、营养建议管理、系统管理的管理;营养师可以对个人中心、修改密码、好友列表、聊天记录、用户、营养建议、我的收藏进行管理;用户则可以管理个人中心、修改密码、好友列表、聊天记录、用户、营养建议、我的收藏。家庭食谱推荐系统致力于简化烹饪流程,让家庭餐桌更加丰富多彩、健康且符合个人喜好。
功能总结
-
个人中心管理:用户可以管理和修改个人信息,查看好友列表和聊天记录。
-
用户管理:添加、删除和修改用户信息。
-
营养师管理:添加、删除和修改营养师信息。
-
菜品社区管理:查看、添加、删除和审核菜品社区的内容。
-
今日食谱管理:查看、添加和删除今日推荐的食谱。
-
营养建议管理:查看、添加和删除营养建议。
-
系统管理:管理系统公告信息和其他系统设置。
通过这些功能,家庭食谱推荐系统不仅简化了家庭烹饪的流程,还提高了家庭成员之间的互动和饮食的健康性。系统设计注重用户体验,界面友好,操作简便,适用于大多数家庭用户。
注:完成的毕业设计程序以下面的的环境软件、功能图和界面为准。
系统所需要的环境软件:idea、eclipse+mysql5.7、8.0+Navicat+JDK1.8+tomcat7.0
3.1系统可行性分析
在开发系统以前,必须对系统开展可行性研究,目地是用有效的方法处理最大的问题。程序流程一旦开发出去满足客户的要求,便会产生许多益处。下面咱们就从技术性、操作性、经济性等领域来挑选这一系统是不是会最后开发。
3.1.1技术可行性
此次系统开发挑选Java语言,这也是一种面向对象编程的语言,Java为开发者提供了丰富的类库,大大减少了使用windows编程的难度,减少开发人员在设计算法上的难度,作为Java开发 Visual Studio更是一个必不可少的角色,它友好的界面,以及强大的功能,给程序开发人员带来了很多方便,加上环境简单,转移方便,无疑使此系统最佳的选择。所以后台设计选择使用MySQL数据库查询主要运用于创建和维护信息。从未来发展趋势看来,应当具备功能完善,使用方便的优势,后台数据库的要求则是能够建立和维护数据信息的统一性和完整性。
依据上述目标来分析本系统的硬件如下:
Intel(R) Core(TM) i7-7700HQ CPU ;
存储器是 16G;
硬盘是1000G;
操作系统是Window 10;
软件层面,安装了Visul Studio和MySQL数据库开发专用工具。依据以上硬件配置和系统规定,得到本系统的技术水平是有效的。
3.1.2经济可行性
本系统的软件开发只要一台一般的计算机就可以进行开发,其成本费很低。此外作为毕业设计论文,开发花费基本上可以忽略,系统软件的交付使用,可以实现更加快速高效的家庭食谱推荐管理,同时还能实现对人力资源和管理资源的有效节约,该家庭食谱推荐系统设计与实现在经济上完全可行。
3.1.3操作可行性
伴随着科学技术的迅猛发展,计算机早就进到大家的日常生活,大家的办公环境都不像过去那么极端了。规定工作人员在指定地点工作中,有一些工作中可以在家里进行。这促使大家工作效能更高一些。操作的多样化也变的更高一些。因而,管理方法的便利化和数字化是现代社会的大势所趋。各种各样智能系统五花八门,不一样的系统可以满足消费者不一样的要求,既增强了工作效能,又达到了一些特殊的要求。该系统不但页面简洁明了,并且使用了数据可视化页面。客户可以应用鼠标和键盘来改动、删掉、加上等有关信息。由于这一系统的使用比较简单实用,第一次应用系统只要一点时间。因而,该系统在使用上是有效的。
3.2系统性能需求分析
对系统性能进行分析,可对系统反应度、界面简洁清晰度、储存能性、易学性和稳定性进行分析;
系统反应度:同时上万人在线时反应时间应该在两三秒以内,。
简单明了的页面:系统界面规定简单明了,使用方便,有利于客户实际操作。
储存特性高:家庭食谱推荐系统的设计方案和完成必须储存很多的信息,因此系统的存储量十分高,因此数据库查询要十分强力,确保信息的可靠平稳储存;
易懂:系统在使用上一定要实用。不用许多繁杂的实际操作,只要简洁的学习培训就可以实际操作。
可靠性:家庭食谱推荐系统的设计方案、完成和运行平稳,页面清楚,字体样式清楚。
3.3系统功能分析
考虑到实际生活中在家庭食谱推荐管理方面的需要以及对该系统认真的分析,将系统权限按进行划分。
管理员登录系统后台所涉及到的功能主要有个人中心、用户管理、营养师管理、菜品社区管理、今日食谱管理、营养建议管理、系统管理等功能。管理员用例如图3-1所示。
图3-1 管理员用例图
营养师注册登录系统前台所涉及到的功能主要有个人中心、修改密码、好友列表、聊天记录、用户、营养建议、我的收藏等功能。营养师用例如图3-2所示。
图3-2 营养师用例图
用户注册登录系统前台,点击个人中心可以对个人中心、修改密码、好友列表、聊天记录、营养师、菜品社区、今日食谱、营养建议、我的收藏等功能。用户用例如图3-3所示。
图3-3用户用例图
3.4系统流程分析
由于不同的系统实际使用用户角色的不同,他们的业务分析也会变得有所不一样,为了论述方便接下来都将以管理员用户功能权限下的系统业务流程来分析,如下图所展示:
3.4.1 用户管理的流程
图3-4 用户管理流程
3.4.2 个人中心管理流程
个人中心管理流程如图3-5所示:
图3-5 个人中心管理流程
3.4.3 登录流程
登录流程如图3-6所示:
图3-6 登录流程
4系统设计
4.1 软件功能模块设计
系统整体功能如下图4-1所示:
图 4-1 系统总体功能模块图
4.2 数据库设计
4.2.1 概念模型设计
概念模型是对现实中的问题出现的事物的进行描述,ER图是由实体线以及关联构成的图,E-R图可以明确地叙述系统中涵盖的实体线相互关系。将“用户、营养师、今日食谱、菜品社区、营养建议、公告信息”等作为实体,它们的局部E-R图,如图4-2所示:
图4-2局部E-R图
5.1系统功能模块
5.1.1前台首页页面
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。系统首页界面如图5-1所示:
图5-1 系统首页界面
在注册流程中,用户在Vue前端填写必要信息(如用户名、密码等)并提交。前端将这些信息通过HTTP请求发送到Java后端。后端处理这些信息,检查用户名是否唯一,并将新用户数据存入MySQL数据库。完成后,后端向前端发送注册成功的确认,前端随后通知用户完成注册。这个过程实现了新用户的数据收集、验证和存储。系统注册页面如图5-2所示:
图5-2系统注册页面
菜品社区:在菜品社区页面的输入栏中输入菜品名称进行查询,可以查看到菜品社区详细信息,并根据需要进行今日食谱、评论或收藏等操作。菜品社区页面如图5-3所示:
图5-3菜品社区详细页面
公告信息:在公告信息页面的输入栏中输入标题进行查询,可以查看到公告详细信息,并根据需要进行评论或收藏等操作。公告信息页面如图5-4所示:
图5-4公告信息详细页面
5.1.2营养师个人中心页面实现
营养师在个人中心页面可以对个人中心、修改密码、好友列表、聊天记录、营养师、菜品社区、今日食谱、营养建议、我的收藏进行详细操作;如图5-5所示:
图5-5营养师个人中心界面
5.1.3用户个人中心页面实现
用户在个人中心页面可以对个人中心、修改密码、好友列表、聊天记录、用户、营养建议、我的收藏进行详细操作;如图5-6所示:
图5-6用户个人中心界面
5.2后台管理员模块实现
在登录流程中,用户首先在Vue前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端会返回给前端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。如图5-7所示。
图5-7 管理员登录界面
管理员进入主页面,主要功能包括对个人中心、用户管理、营养师管理、菜品社区管理、今日食谱管理、营养建议管理、系统管理等进行操作。管理员主页面如图5-8所示:
图5-8 管理员主界面
用户管理;在用户管理页面输入用户账号、姓名进行查询、添加或删除用户管理列表,并对用户管理详细信息进行查看、修改或删除操作;如图5-9所示:
图5-9用户管理界面
营养师管理;在营养师管理页面输入营养师账号、营养师姓名进行查询、添加或删除营养师管理列表,并对营养师管理详细信息进行查看、修改或删除操作;如图5-10所示:
图5-10营养师管理界面
菜品社区管理功能在视图层(view层)进行交互,比如点击“查询、添加、删除或审核”按钮或填写菜品社区管理表单。这些菜品社区管理表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、今日食谱、查看评论或删除菜品社区管理信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便菜品社区管理功能可以看到最新的信息或相应的操作反馈。如图5-11所示:
图5-11菜品社区管理界面
今日食谱管理功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写今日食谱管理表单。这些今日食谱管理表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、营养建议、修改或删除今日食谱管理信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便今日食谱管理功能可以看到最新的信息或相应的操作反馈。如图5-12所示:
图5-12今日食谱管理界面
营养建议管理功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写营养建议管理表单。这些营养建议管理表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除营养建议管理信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便营养建议管理功能可以看到最新的信息或相应的操作反馈。如图5-13所示:
图5-13营养建议管理界面
系统管理功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写系统管理表单的公告信息。这些系统管理表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除公告信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便系统管理功能可以看到最新的信息或相应的操作反馈。如图5-14所示:
图5-14系统管理界面
源码无偿分享,文未领取