美食分享系统

668 篇文章 8 订阅
531 篇文章 1 订阅
本文介绍了一款使用Java编程语言,基于SpringBoot框架和MySQL数据库开发的美食分享系统。系统包括菜谱信息、收藏、笔记、饮食资讯等功能,旨在提供便捷的美食信息分享和管理平台。系统采用MVC模式,保证了代码的组织性和可维护性,同时使用Vue.js作为前端框架,提升了用户界面的交互体验。通过系统测试,确保了各项功能的稳定性和安全性。
摘要由CSDN通过智能技术生成

 2023年 6月 9

摘 要

随着社交媒体的普及和人们对美食的关注度不断提高,美食分享系统在过去几年中逐渐兴起并成为了一个独立的领域。这些平台允许用户分享自己的食谱、餐厅评论、美食照片和其他相关信息,也可以通过关注其他用户来获取灵感和建议。

该系统采用Java编程语言,采用开放源码系统结构Spring Boot完成整个系统结构,以MySQL作为数据库进行存储,Tomcat作为服务器,负责从前面向用户提供的信息。分析了餐饮美食分享的要求,建立了相关的开发模式,分析了其特点,建立了相应的开发平台。经过调研,确定了美食分享系统的要求,最终完成了该系统的研制和测试。主要功能包括菜谱信息、收藏信息、笔记信息、饮食资讯、趣味答题信息等核心功能。本系统的开发为用户提供更加优质的服务,系统内功能简单易懂,学习成本低,保证多用户登录时不会出现系统崩溃等问题;界面简洁,重要功能一目了然,同时兼具美观,不会造成审美不适,实现一个高效、高安全性的美食分享系统。

关键词:美食分享系统,Java,Spring Boot,MySQL

ABSTRACT

With the popularity of social media and the increasing awareness of food, food sharing platforms have emerged over the past few years and become a separate sector. These platforms allow users to share their recipes, restaurant reviews, food photos and other relevant information, as well as follow other users for inspiration and advice.

The system uses Java programming language, uses open source system structure Spring Boot to complete the whole system structure, uses MySQL as the database storage, Tomcat as the server, responsible for the information provided to users from the front. Analyzed the requirements of food sharing, established the relevant development mode, analyzed its characteristics, established the corresponding development platform. After investigation, the requirements of the food sharing platform were determined, and finally the development and testing of the system was completed. The main functions include menu information, collection information, note information, food information, fun answer information and other core functions. The development of the system to provide users with more quality services, the system functions are simple and easy to understand, low learning costs, to ensure that multi-user login will not occur when the system crashes and other problems; The interface is simple and the important functions are clear at a glance. At the same time, it is beautiful and will not cause aesthetic discomfort, so as to realize an efficient and safe food sharing platform.

KEY WORDS:Food sharing platform, Java, Spring Boot, MySQL

目 录

前 言.............................................................................................................................. 1

第1章 绪论.................................................................................................................. 2

1.1 研究背景......................................................................................................... 2

1.2 选题意义......................................................................................................... 2

1.3 研究内容......................................................................................................... 3

第2章 系统技术.......................................................................................................... 4

2.1 MVC模式....................................................................................................... 4

2.2 MySQL数据库............................................................................................... 4

2.3 Spring Boot框架............................................................................................. 4

2.4 Java语言.......................................................................................................... 5

2.5 Vue框架.......................................................................................................... 5

2.6 Spring框架...................................................................................................... 6

第3章 需求分析.......................................................................................................... 7

3.1 系统目标......................................................................................................... 7

3.2 系统可行性分析............................................................................................. 7

3.2.1 技术可行性.......................................................................................... 7

3.2.2 经济可行性.......................................................................................... 8

3.2.3 社会可行性.......................................................................................... 8

3.3 功能需求分析................................................................................................. 8

3.3.1 用例概述.............................................................................................. 8

3.3.2 用例分析.............................................................................................. 9

3.4 非功能需求分析........................................................................................... 12

第4章 概要设计........................................................................................................ 14

4.1 功能模块设计............................................................................................... 14

4.1.1 业务流程............................................................................................ 14

4.1.2 功能模块............................................................................................ 17

4.2 数据库设计................................................................................................... 18

4.2.1 概念模型设计.................................................................................... 18

4.2.2 数据库表............................................................................................ 19

第5章 系统实现........................................................................................................ 22

5.1 用户注册登录............................................................................................... 22

5.2 菜谱信息....................................................................................................... 22

5.3 用户管理....................................................................................................... 23

5.4 食材信息....................................................................................................... 24

5.5 笔记点赞信息............................................................................................... 24

5.6 趣味答题信息............................................................................................... 25

5.7 收藏信息....................................................................................................... 26

5.8 饮食资讯信息............................................................................................... 26

5.9 菜谱信息展示............................................................................................... 27

5.10 菜谱详细信息............................................................................................. 28

5.11 笔记信息展示............................................................................................. 28

5.12 笔记详细信息展示..................................................................................... 29

第6章 系统测试........................................................................................................ 30

6.1 系统测试的目的........................................................................................... 30

6.2 测试过程....................................................................................................... 30

6.2.1 登录测试............................................................................................ 30

6.2.2 用户管理测试.................................................................................... 30

6.2.3 菜谱信息管理测试............................................................................ 31

6.2.4 笔记信息管理测试............................................................................ 32

6.3 系统测试的意义........................................................................................... 33

第7章 总结与展望.................................................................................................... 35

7.1 工作总结....................................................................................................... 35

7.2 展望............................................................................................................... 35

致谢.............................................................................................................................. 36

参考文献...................................................................................................................... 37

前 言

随着生活条件的改善,现在人们更加注重饮食。美食是人们生活中不可或缺的一部分,它不仅能满足我们的味蕾,还能给我们带来愉悦的心情和身体的营养。然而,在现代快节奏的生活中,我们往往没有足够的时间去品尝各种美食,或者在选择美食时缺乏有效的参考。因此,我们需要一个方便快捷的系统来分享美食信息,让人们更方便地了解、选择和品尝美食。

为了满足这一需求,我们设计了一个美食分享系统,旨在为用户提供一个便捷的平台,让他们可以分享自己喜欢的美食,发现新的美食,以及获取其他用户对美食的评价和建议。这个系统不仅可以帮助人们更好地了解美食,还可以促进用户之间的交流和互动,增强社交性和用户体验。

在这个系统中,用户可以上传自己制作或品尝的美食图片和视频,分享制作过程和口感评价,也可以搜索和浏览其他用户上传的美食信息,查看相关评论和推荐。同时,系统也会根据用户的历史记录和偏好,推荐相似的美食信息,提供更个性化的服务。我们相信,这个美食分享系统将会成为人们生活中不可或缺的一部分,为他们带来更多的美食体验和快乐。

第1章 绪论

1.1 研究背景

美食分享系统提供给用户分享美食和餐饮文化的空间。平台通常允许用户发布自己的美食照片、食谱、评价、评论、博客文章等内容,也可以浏览其他用户分享的内容,与其他用户交流和互动。随着互联网的普及和移动设备的广泛应用,美食分享系统的用户群体也越来越庞大[1]。这些平台成为了餐饮爱好者们交流和分享的场所,也为广大用户提供了寻找美食和餐饮文化的便利途径。同时,这类平台还对餐饮行业的发展产生了重要影响,促进了餐饮文化的传承和发展。当前世界正处于高速发展阶段,高效率是社会生产力的重要组成部分。美食分享系统等使用与宣传,是社会的资讯物化,方便了管理员与用户,节省了管理者管理的精力,提高了办事的速度。可见,信息化是一个必然的趋势,它能改变一个系统的工作方式[2]。

1.2 选题意义

随着人们对于美食的关注度不断提高,美食分享系统应运而生。美食分享系统是指专门为用户分享美食相关信息的在线社交平台,用户可以在上面分享自己的美食体验、评价餐厅、推荐美食等等。在过去,人们想要了解美食信息,多半是通过媒体、杂志或口碑传播等方式获得,这些方式不够便捷、即时,且无法满足用户对于多样化的需求。而随着社交媒体和智能手机的普及,美食分享系统成为了一个新的选择[3]。美食分享系统的兴起得益于社交媒体和移动互联网技术的发展,它为用户提供了一个即时、便捷、多元化的美食分享系统,也为商家提供了一个与顾客直接沟通和宣传的渠道。美食分享系统也成为了很多美食爱好者、美食博主、餐厅负责人等人们分享美食信息的首选平台之一[4]。

1.3 研究内容

以下是关于这篇文章的文献编目:

第一章为绪论部分。该章重点阐述了研究背景和意义,以及本文的结构。

第二章主要介绍了该软件的开发平台和技术。本文对美食分享系统的开发环境以及所使用的技术进行了较为详尽的阐述。

第三章为需求分析。该章对美食分享系统的功能和非功能要求进行了详尽的描述。

第四章为系统功能设计。进行了系统功能分析和数据库设计。

第五章为系统实现。本文主要讨论了在美食分享系统的功能实现。

第六章对本论文进行了系统测试。这一章讨论了利用黑盒子进行系统的测试。

2章 系统技术

2.1 MVC模式

采用MVC方法不仅能动态地提高美食分享系统的代码质量,而且减少了对SQL语句的反复编写,使之具有通用性,从而实现了对数据库的特定的处理[5]。MVC技术能够简化美食分享系统的编码率,从而达到改善编码的目的。MVC三个主要模型分别是模型、视图和控制面板。在MVC的设计模式下,可以将模型与系统的主体进行交换,而控件则可以根据用户对页面的需求进行处理,而视图则可以将用户的页面展示给用户。在MVC模式下,可以将模型的数据转化为可视化。如果模型发生了变化,则可以在用户界面上显示转换后的数据[6]。

2.2 MySQL数据库

本设计是基于SQL客户端和服务器模式的关系。MySQL数据库用于多用户和多线程服务器。MySQL数据库的优点是操作比较简单、符合web站点以及其他软件的使用,实现数据的存储。可以用不同的语言以编程方式访问MySQL数据库。由于MySQL数据库具有源代码开放、响应速度快、使用方便、可靠性高、安全保密等优点,大大降低了整体成本,非常适合中小型网站的开发,越来越多的程序员选择MySQL数据库来构建数据库。

大部分程序开发者通过在JDBC中导入相应数据库的jar包来连接MySQL数据库,实现数据库存储。数据存储的过程中使用class.forname来进行驱动的,编程者在创建数据库后,程序通过DAO模式对系统数据库中的内容进行操作。DAO模式是实现数据库和数据访问的主要对象,是实现动态网站不可少的部分,只需安装数据库即可完成数据的存储,无需使用特定的物理位置进行修复。

2.3 Spring Boot框架

Spring Boot是由Pivotal的开发团队在2013年开发的一个免费、轻量级、开源的系统框架。Spring Boot的主要设计思想是约定大于配置,因此Spring Boot在设计时几乎达到零配置。Spring Boot集成了业界的开源框架。

Spring Boot是一个非常强大的后台框架,因为Spring Boot的开发基本上不需要写配置文件,所以利用Spring Boot来构建网站的后台环境,在Spring Boot的YML配置文件中写项目启动端口,项目就可以启动了。项目的Java和静态文件由Spring Boot管理,Spring Boot框架可以与许多其他技术进行集成,如Spring Security、Spring Data等。这些集成可以帮助开发人员快速实现复杂的业务逻辑和功能。基于以上几个方面,Spring Boot框架成为了Web应用开发中的首选技术之一。我们选择了Spring Boot框架,主要是为了提高开发效率、简化配置、易于维护和高度集成等方面的优势[8]。

2.4 Java语言

1995年sun发行了Java语言。Java的开发在IT行业中是一种主流的语言。java是“Green”计划的一部分,1996年Sun公司将其分为J2SE、J2EE和J2ME。J2E为分布式企业程序的开发和执行提供了一个平台。21世纪以来,J2EE因其具有较强的线性化和可扩充性而备受众多厂商的关注。Java有许多优点,其中有Java的安全;可以在网络中采用分布式方式,并能保证鲁棒性和效率。

Java是一种计算机编程语言,在java中包含了非常多的基础代码包,覆盖了许多的信息,许多功能不必从头开始实现,只需要调用java封装包中即可,java编程语言能够完成网页后端的主要逻辑处理代码,java是一个较为完整的平台,包含了非常多库,包含的很多代码都是可重用的,java还提供了一个高安全性,可移植性和自动回收的一个环境。java语言编写而成的文件可以在不同的操作系统中运用,所以相同的class文件可以在不同的操作系统上运行。java技术在处理后端的主要业务时主要作用有拼接,添加,文件的导入等。

2.5 Vue框架

js是当前最流行的一个前端编程人员使用的一个主要架构,它从Angular的出色特性中剥离出来,并且建立了一个轻量级的架构,这个架构主要集中在Vue. js上,它可以利用各种构件和方式来对Vue. js进行交互。js的关键在于可以通过模板的句法向DOM中加入数据,在创建一个实体前,必须先宣告一个根性的特性,然后才可以对视图进行同步的修改,当一个视图与一个模型相结合时,Vue Framework可以监测到该模式的改变,并对其进行实时的修改。js包含了构件和反应系统等功能。

构件是一种抽象的概念,由软件开发商通过构件来构造出一个完整的体系,很多的前端接口都可以通过构件来完成。这些构件也能扩充静态网页的程式码,并能重新利用程式码。Vue可以根据您的需求转换成定制的项目。Vue Framework将get和set方式通过 object对象加入到该特性中。Vue可以在它里面执行跟踪相关性,前提是数据更新。

2.6 Spring框架

Spring架构是一种适合于解决复杂开发的JavaEE技术的开发架构。Spring是一个开放源码的架构,它可以让IOC的容器来管理物件之间的相依性,从而帮助防止程式程式的程式编码产生问题。Java的能力是通过映射来实现Bean的实例,并建立相应的Bean物件。Spring还具有AOP的特性,它将独立于商业的逻辑编码打包,并由管理员进行管理,以减少代码的重复,同时也可以减小各功能组件的联动性。

使用Spring开放源码架构,程式开发者可以将更多的注意力放在程式的开发上,而非程式设计的架构。Spring可以在不使用容器的情况下,对软件进行更容易的检测,并且Spring可以将其他Web架构整合到一起,这样就可以为操作系统提供更多的信息。

3章 需求分析

3.1 系统目标

本系统包括了美食分享等工作,采用MVC的设计方法和MySQL数据库来实现美食分享管理,目的在于方便用户,提高管理员的工作效率。

美食分享系统的实施要结合实际,清楚用户的需要,分析用户的需要,制定出一个系统的目标,并对其进行分析,从而确定美食分享系统的系统结构。

(1)各子系统应具有独立且平滑的特点,有利于各子系统的发展与维修。

(2)充分地顾及对实现过程中的责任划分,尽量将各职能子系统置于便于对子系统进行管理的责任范围内。

(3)用户对美食分享管理的特定业务不能过于繁杂,不同的用户具有不同的经营和经营的权力,需要在不同的用户表格中加以区分。

在用户的功能层次上,用户的接口应该更加友好,用户可以简单地使用。在开发过程中,要注意系统的开发费用,提高工作的效能[10]。

3.2 系统可行性分析

本文在分析了该系统的目的以后,从技术可行行、经济可行性以及及社会可行性的角度分别分析了美食分享系统。

3.2.1 技术可行性

本系统采用Java语言,易于操作,能够利用开放源码的框架进行编程,具有很好的跨平台能力,能够在多种操作系统上进行工作。与其它编程语言比较,Java语言的重量比较小,并且执行起来也比较高效。现在网络上有很多Java和开放源码的相关架构,易于使用,而且它的架构也很简单[11]。

本系统采用Vue. js作为前部的结构,而后端则采用开放源码的SpringBoot架构。如果将Vue. js与后台的Framework组合在一起,那么就可以顺利完成传输资料。在开放源码的架构下,可以利用视图解释仪处理前面的网页,将使用者所看到的资料储存在数据库内,从而增强了美食分享系统的安全。

3.2.2 经济可行性

从需求分析到最终的设计和实施,所用的资金并不多,当美食分享系统需要使用的时候,一部普通的计算机就能完成多方面操作,并且在一定的软件支持下,就可以正常工作了。管理员在运行美食分享系统体系方面比较容易,这样就有了更多的时间来改进自己的系统体系。

3.2.3 社会可行性

本文所研制的美食分享系统具有不违背法律、伦理层面、操作界面较为简便、便于用户使用的特点。由于电脑技术的飞速发展,电脑技术在餐饮行业中的运用也越来越广泛,因而可以更好地为这次的美食分享系统体系的开发打下坚实基础。

3.3 功能需求分析

3.3.1 用例概述

用例图是一种以图形方式说明系统用户对操作功能的基本认知的方式。可以直观地看到,用户正在使用系统的操作权限。从另一个角度来看,它相当于用户在需求分析中想要的功能动作的设计和实现[12]。下面将分别对用户和管理员的用例图进行说明。

用户:系统公告、菜谱、收藏、笔记、饮食资讯、趣味答题。

图3-1 用户用例图

管理员:用户信息、菜谱大类信息、菜谱小类信息、菜谱信息、食材信、收藏信息、笔记点赞信息、笔记信息、饮食资讯信息、公告信息、趣味答题信息、个人信息、笔记信息评论、修改密码。

图3-2 管理员用例图

3.3.2 用例分析

(1)用户信息管理

在表格3.1中给出了用户信息管理案例的说明。

表3-1 用户信息管理用例描述

用例标识

3.1

用例名称

管理用户信息

参与者

管理员

前置条件

管理员必须输入正确的账号和密码以登录该系统

后置条件

管理用户

用例概述

管理员管理用户

基本事件流

1.管理员输入用户名和密码

2.管理员点击添加按钮,在用户信息管理界面中提交新增加的用户信息

3.只有用户信息跟数据库信息不同,用户信息才能够添加成功

备选事件流

4.添加的信息需要注意字符合法性才能够成功添加

备注

(2)管理员信息管理

管理员信息管理用例描述如表3-2所示。

表3-2 管理员信息管理用例描述

用例标识

3.2

用例名称

管理管理员信息

参与者

管理员

前置条件

管理员必须输入正确的账号和密码以登录该系统

后置条件

管理管理员信息

用例概述

管理员管理管理员信息

基本事件流

1.管理员输入用户名和密码

2.管理员点击修改按钮,在管理员信息管理界面上提交修改后的管理员信息

3.管理员信息修改成功

备选事件流

4.修改的信息需要注意字符合法性才能够成功修改

备注

(3)菜谱信息管理

菜谱信息管理用例描述如表3-3所示。

表3-3 菜谱信息管理用例描述

用例标识

3.3

用例名称

删减菜谱信息

参与者

管理员

前置条件

管理员登录系统

后置条件

删减菜谱信息

用例概述

管理员删减菜谱信息

基本事件流

1.管理员在系统中输入正确的账号和密码

2.管理员按下删除键,将更改后的菜谱资料提交至菜谱信息管理界面

3.菜谱信息删除成功

备选事件流

4.菜谱信息需要不与其他表格相联系,才能够删除菜谱信息

备注

(4)收藏菜谱信息

收藏菜谱信息用例描述如表3-4所示。

表3-4 收藏菜谱信息用例描述

用例标识

3.4

用例名称

收藏菜谱信息

参与者

用户

前置条件

用户需要登录

后置条件

收藏菜谱信息

用例概述

用户收藏菜谱信息

基本事件流

1.用户登录网页

2.在这个系统中,用户键入一个自己拥有的用户名和密码

3.打开菜谱的页面进行收藏操作

(5)登录

登录用例描述如表3-5所示。

表3-5 登录用例描述

用例标识

3.5

用例名称

登录

参与者

用户、管理员

前置条件

用户和管理员需要输入正确的用户名和密码

后置条件

登录

用例概述

用户和管理员登录

基本事件流

1.用户和系统管理员登录网页

2.管理员和使用者在系统中输入信息

备选事件流

4.如果需要成功登录,必须输入与数据库信息相符的信息

备注

(6)个人中心

个人中心用例描述如表3-6所示。

表3-6 个人中心用例描述

用例标识

3.6

用例名称

个人中心

参与者

用户、管理员

前置条件

用户和管理员必须访问配置文件更改页

后置条件

修改个人信息

用例概述

用户和管理员管理个人信息

基本事件流

1.用户和系统管理员登录网页

2.使用者及管理人员在该系统内输入使用者名称及密码

3.更改自己的个人信息到自己的个人信息更改页

备选事件流

4.只有输入的信息合法才能够成功修改

备注

(7)笔记点赞

笔记点赞用例描述如表3-7所示。

表3-7 笔记点赞用例描述

用例标识

3.7

用例名称

笔记点赞

参与者

用户

前置条件

用户进入到笔记页面中

后置条件

笔记点赞信息

用例概述

用户笔记点赞

基本事件流

1.用户登录网页

2.在这个系统中,用户键入了一个使用者名称和密码

3.在笔记网页中进行点赞笔记

备选事件流

4.只有点击相应的按钮才能够管理

备注

3.4 非功能需求分析

(1)用户在使用客户端进行系统访问时,需要检查是否具有良好的性能,并可以设置多台服务器,从而提高其功能。MySQL具有高速缓存功能,它能根据美食分享系统的数据进行高速缓冲,对数据库的主要性能进行调节,从而提高数据库的性能。如果使用了数据库的缓冲功能,那么用户在看到相同的信息时,就能立刻从高速缓存中读出信息,从而提高了数据的阅读速度。

(2)在运行过程中,美食分享系统的运行需要有足够的稳定性,能够承受一些压力。在代码出现轻微错误时,美食分享系统的操作应该不会受到任何的干扰。如果系统因为故障而导致了故障,那么这就说明了美食分享系统的功能是否还能正常使用。

(3)当在进行美食分享系统管理的时候,一定要注意它的维护性,它的实施要选择多个层次的架构来完成,在软件开发人员的分工下,要注意它的建立,以利于以后的维护。

(4)该美食分享系统提供了一个灵活的查询控制功能,当管理员输入信息时,就可以生成一个查询,从而提高了查询的速度[13]。

4章 概要设计

4.1 功能模块设计

4.1.1 业务流程

1)登录

用户需要在登录网页上输入用户名称和用户密码,然后点击登录按钮,如果通过验证,就可以进入到首页。

图4-1 登录流程图

2)注册

如果用户两次输入密码不一致,那么就不能成功注册。

图4-2 注册流程图

3)查询

如果在数据库记录中没有找到该信息,那么就不能显示出相关信息。

图4-3 查询流程图

4)菜谱信息管理

管理员登录系统后台界面,可以对菜谱信息进行增删改查。

图4-4菜谱信息管理流程图

4.1.2 功能模块

根据之前的各项设计分析,从系统的开发理念来看,系统可分为用户模块、和管理员模块。

用户模块主要是针对用户而设计,管理员模块是针对管理员而设计,而管理员可以对数据进行添加、删除、修改及查询等操作,相比之下管理员的权限是要大于用户的权限,所以管理员的功能会更多。

图4-4 功能模块图

4.2 数据库设计

数据库是一个文件仓库,可以利用相关api接口来进行数据的存储。以前,可以将数据存储在文件里面,但是使用这个方法来存储和阅读数据的速度并不是很高,所以在使用MySQL的时候,系统就需要使用MySQL来存储和阅读这些数据。MySQL是一个自由的开放源码系统,建立在一个关联的基础上的关系数据库。

4.2.1 概念模型设计

美食分享系统需要提供数据库存储系统中的信息,处理系统的信息可以使用MySQL数据库,只要美食分享系统需要数据的,那么MySQL数据库就可以把取得的数据交给服务端来处理。可以使用可视化软件来操作MySQL数据库,管理员对数据库的信息机芯进行管理时也可以使用可视化软件。

E-R设计是系统数据层设计里面的其中之一,E-R的分析和设计是系统数据实体设计必不可少的一环,数据库表的设计通过E-R来获取,E-R最大的优点是可以描述系统所涉及到的实体和系统中不同实体之间的联系和关系。

(1)要充分地反映现实世界,包括现实事物之间的联系,这样对不同程序的开发者对数据处理的需要都是非常有利的。

(2)要简单易懂,这样可以让那些没接触过计算机的用户也可以快速使用系统,想要用户选择参与那么它的数据库就要设计好。

(3)要容易变更。系统应用环境发生改变概念模型往往也会改变,容易修改概念模型是数据库设计的关键。

图4-5 数据库E-R图

4.2.2 数据库表

(1)食材信息表

表4-1 食材信息表

列名

数据类型

长度

主外键

字段说明

id

bigint

ID

name

varchar

255

名称

description

varchar

255

描述

fileId

bigint

文件id

fileName

varchar

255

文件名

userName

varchar

255

上传人

level

int

用户等级

uploadUserId

bigint

用户id

(2)菜谱信息表

表4-2 菜谱信息表

列名

数据类型

长度

主外键

字段说明

id

bigint

ID

name

varchar

255

名称

description

varchar

255

描述

tips

varchar

255

菜谱标签

subId

bigint

菜谱小类id

fileId

bigint

文件id

fileName

varchar

255

文件名

userName

varchar

255

上传人

level

int

用户等级

uploadUserId

bigint

用户id

(3)趣味答题表

表4-3 趣味答题表

列名

数据类型

长度

主外键

字段说明

id

bigint

ID

name

varchar

255

名称

content

text

回答内容

time

varchar

255

回答时间

(4)笔记信息表

表4-4 笔记信息表

列名

数据类型

长度

主外键

字段说明

id

bigint

ID

name

varchar

255

名称

time

varchar

255

上传时间

userId

bigint

用户id

status

longtext

审核状态

(5)用户信息表

表4-5 用户信息表

列名

数据类型

长度

主外键

字段说明

id

bigint

ID

name

varchar

255

姓名

password

varchar

255

密码

nickName

varchar

255

昵称

sex

varchar

255

性别

age

int

年龄

birthday

varchar

255

生日

phone

varchar

255

手机号

address

varchar

255

地址

email

varchar

255

邮箱

cardId

varchar

255

身份证

level

int

权限等级

(6)收藏表

表4-6 收藏表

列名

数据类型

长度

主外键

字段说明

id

bigint

ID

name

varchar

255

名称

time

varchar

255

时间

foodsId

bigint

菜谱id

notesId

bigint

笔记id

userId

bigint

用户id

level

int

数量

(7)笔记点赞表

表4-7 笔记点赞表

列名

数据类型

长度

主外键

字段说明

id

bigint

ID

name

varchar

255

名称

time

varchar

255

时间

foodsId

bigint

菜谱id

notesId

bigint

笔记id

userId

bigint

用户id

level

int

数量

5章 系统实现

5.1 用户注册登录

如果需要登记,就需要输入相应的用户数据,然后在注册完成后,就可以登录了,如果需要登录,就需要输入相应的身份,然后输入相应的信息。逻辑代码中的逻辑代码需要定义,用户的信息可以根据用户的姓名来查找,用户的个人数据可以被查询到,如果用户输入的用户名称与数据库记录不符,那么在后台的服务窗口就会提示用户。用户也可以选择重新设置的口令,激活session包含的 invalidate来取消用户。

图5-1 登录界面

5.2 菜谱信息

如果在菜谱信息管理接口中显示了信息,则可以采用网页的形式进行展示,如果网页上的数据比较多,则可以进入下一页,使用网页特定的工具类别来完成上一页和下一页的效果。当管理员在输入框中输入的菜品名称时,需要将其传递给后端逻辑代码的query函数,并且,在得到该菜谱信息时,需要将该消息输入到前面的接口中。修改键的时间,一定要符合逻辑代码设置的更新功能。如果管理员点击删除键,那么就需要设置删除功能,使用SQL声明删除设置。

图5-2 菜谱信息界面

5.3 用户管理

管理员在管理用户的数据时,需要定义后端接口,从而可以对用户进行增、删、查。前面的用户显示需要使用列表函数,并且在前面和后面的数据是由请求对象来传递的。用户的信息被包装成页面的目的,而前面的接口使用规则运算来对页面进行解析。用户的信息要存储在用户的实体中,相关信息都要一一对应。管理员要添加用户数据需要登录后台管理系统点击添加按键,再加上按键时需要绑定按键点击,之后逻辑上的代码和绑定相关的接口才能满足用户的需求。

图5-3 用户管理界面

5.4 食材信息

如果在食材信息管理接口中显示了信息,则可以采用网页的形式进行展示,如果网页上的数据比较多,则可以进入下一页,使用网页特定的工具类别来完成上一页和下一页的效果。当管理员在输入框中输入的食材名称时,需要将其传递给后端逻辑代码的query函数,并且,在得到该食材的信息时,需要将该消息输入到前面的接口中。修改键的时间,一定要符合逻辑代码设置的更新功能。如果管理员点击删除键,那么就需要设置删除功能,使用SQL声明删除设置。

图5-4 食材信息界面

5.5 笔记点赞信息

管理员要管理笔记点赞的信息,就必须要到笔记点赞信息的页面里面去,而要删除笔记点赞的话,就必须要到笔记点赞信息的页面里面,然后单击“删除”键,在删除数据的过程中要检查被删除的数据是不是和其他数据之间的相关较大联系,否则无法进行正常的删除等操作。管理员要查询的话可以直接进入美食分享系统,在系统的搜索栏里键入一个笔记的名字来查询笔记点赞的相关资料,只要符合资料库的目录,就可以查询到相关的笔记点赞资料。

图5-5 笔记点赞信息界面

5.6 趣味答题信息

管理员通过趣味答题信息界面对趣味答题信息开展管理,管理员必须先登录之后才可以进到趣味答题信息管理作用界面中。假如管理员要想更改趣味答题信息必须在趣味答题信息管理界面中点一下管理按钮,在改动趣味答题信息作用界面中键入改趣味答题信息,假如输入的趣味答题信息标识符不合理合法或是与数据库原来的趣味答题信息表中的记录相矛盾了,则应当在前端中提醒修改不成功。

管理员还可以在趣味答题信息管理界面中进行删除操作,但不能将趣味答题信息删除,必须在数据库中设置外部关键字的关系,否则无法正常删除。

图5-6 趣味答题信息界面

5.7 收藏信息

管理员可以利用收藏信息功能管理系统中的收藏信息,其管理功能本质上就是利用 SQL语句对数据库记录进行操作。管理员要添加一个收藏信息的资料,就必须要登录,然后才能进入到管理员的管理界面,然后点击添加键,然后输入一个新的收藏信息,在输入的时候,要注意这个字符的正确性和必须的输入。

管理员要先登录收藏信息管理界面,然后点击删除按钮,将该收藏信息删除,然后再将该收藏信息删除,如果该收藏信息的数据与其他数据表之间有无关联,那么就必须将其他数据删除。

图5-7 收藏信息界面

5.8 饮食资讯信息

管理员通过饮食资讯信息界面对饮食资讯信息开展管理,管理员必须先登录之后才可以进到到饮食资讯信息管理作用界面中。假如管理员要想更改饮食资讯信息必须在饮食资讯信息界面中点一下管理按钮,在改动饮食资讯信息作用界面中键入改饮食资讯信息,假如输入的饮食资讯信息标识符不合理合法或是与数据库原来的饮食资讯信息表中的记录相矛盾了,则应当在前端界面中提醒修改不成功。

管理员还可以在饮食资讯信息管理界面中进行删除操作,但不能将饮食资讯信息删除,必须在数据库中设置外部关键字的关系,否则无法正常删除。

图5-8 饮食资讯信息界面

5.9 菜谱信息展示

在菜谱信息展示页面上,可以显示菜谱的详细数据,登录后点击浏览,点击菜谱的页面就会自动切换到菜谱页面,在页面上设置对应的功能,满足用户的需求,而前端的接口则可以对服务端发送的数据进行解析,然后显示在接口上。在菜谱的信息一定要与对应的点击活动相结合,用户点击后可以进行跳跃到对应的界面。

图5-9 菜谱信息展示界面

5.10 菜谱详细信息

用户可以进入到详细的菜谱信息界面。从菜谱信息展示接口进入到详细的菜谱信息页面,需要将菜谱的代码传递给服务端,然后再用SQL语言将其详细的数据传递给用户。

图5-10 菜谱详细信息界面

5.11 笔记信息展示

在笔记信息显示界面中,用户可以通过表格的方式看到笔记信息,当使用者想要查看笔记信息的细节时,只需点击笔记信息的图片,就可以进入到笔记信息的详细信息中,在这个过程中,会有一个来自客户的请求被发送到服务器端,由服务端的逻辑服务程序通过处理接口来处理,将该笔记信息的信息从数据库记录中提取出来,并通过该规则表达式分析该信息,并将其显示出来。

图5-11 笔记信息展示界面

5.12 笔记详细信息展示

在笔记信息细节显示界面中,可以显示笔记信息的细节,并将笔记信息的细节显示在服务端,服务端使用逻辑接口,通过数据库SQL语句操作数据库来记录笔记信息的细节,从而方便使用者更好的理解笔记信息。

图5-12 笔记详情信息展示界面

6章 系统测试

6.1 系统测试的目的

功能测试的主要目的是检查各功能是否正常地执行,是否可以使用。以满足用户的日常需要。而在整个开发的整个流程中,一旦投资到了产品的服务器上,系统就会自动启动,很有希望继续增加统一并发访问量[14]。而同时,系统所承受的负载也会越来越大,一旦超过了系统的承受能力,系统就会出现故障,比如延迟,比如故障。这样的问题会极大地影响到用户的体验,如果解决不了问题,就会造成大量的用户流失。尤其是对于那些正在进行促销或者购买的网站来说,这样的问题往往会致命[15]。

6.2 测试过程

6.2.1 登录测试

表6-1 登录用例表

模块测试

测试用例

预期结果

实际结果

是否通过

登录

账号:abo

密码:abo

可以使用系统功能

可以使用系统功能

通过

登录

账号:null

密码:abo

不能够使用系统功能,系统提示请输入账号

不能够使用系统功能,系统提示请输入账号

通过

登录

账号:abo

密码:null

不能够使用系统功能,系统提示请输入密码

不能够使用系统功能,系统提示请输入密码

通过

登录

账号:null

密码:null

不能够使用系统功能,系统提示请输入账号

不能够使用系统功能,系统提示请输入账号

通过

6.2.2 用户管理测试

表6-2 用户管理用例表

模块测试

测试用例

预期结果

实际结果

是否通过

用户管理

管理员想要添加用户的信息输入用户必填的信息

如果输入信息合法、与数据库记录相符的数据,可以添加成功

如果输入信息合法、与数据库记录相符的数据,可以添加成功

通过

用户管理

管理员想要添加用户的信息输入用户必填的信息

输入信息不合法、与数据库记录不相符的数据

输入信息不合法、与数据库记录不相符的数据

通过

用户管理

管理员想要修改用户的信息点击修改按钮

如果输入的修改是不正当的,或者输入的是与数据库记录相符的

如果输入的修改是不正当的,或者输入的是与数据库记录相符的

通过

用户管理

管理员想要修改用户的信息点击修改按钮

输入的修改是正常字符的,或者输入的是与数据库记录不符的

输入的修改是正常字符的,或者输入的是与数据库记录不符的

通过

用户管理

管理员想要删除用户的信息点击删除按钮

若要移除的用户记录与其他数据库记录相关

若要移除的用户记录与其他数据库记录相关

通过

用户管理

管理员想要删除用户的信息点击删除按钮

移除的用户记录与其他数据库记录不相关

移除的用户记录与其他数据库记录不相关

通过

用户管理

管理员想要搜索用户的信息在输入框中输入用户名称搜索

如果输入的用户名字与数据库纪录相符合

如果输入的用户名字与数据库纪录相符合

通过

用户管理

管理员想要搜索用户的信息在输入框中输入用户名称搜索

如果输入的用户名字与数据库纪录不符。

输入的用户名字与数据库纪录不符

通过

6.2.3 菜谱信息管理测试

表6-3 菜谱信息管理用例表

模块测试

测试用例

预期结果

实际结果

是否通过

菜谱信息管理

管理员想要添加菜谱信息的信息输入菜谱信息必填的信息

如果输入信息合法、与数据库记录相符的数据,可以添加成功

如果输入信息合法、与数据库记录相符的数据,可以添加成功

通过

菜谱信息管理

管理员想要添加菜谱信息的信息输入菜谱信息必填的信息

输入信息不合法、与数据库记录不相符的数据

输入信息不合法、与数据库记录不相符的数据

通过

菜谱信息管理

管理员想要修改菜谱信息的信息点击修改按钮

如果输入的修改是不正当的,或者输入的是与数据库记录相符的

如果输入的修改是不正当的,或者输入的是与数据库记录相符的

通过

菜谱信息管理

管理员想要修改菜谱信息的信息点击修改按钮

输入的修改是正常字符的,或者输入的是与数据库记录不符的

输入的修改是正常字符的,或者输入的是与数据库记录不符的

通过

菜谱信息管理

管理员想要删除菜谱信息的信息点击删除按钮

若要移除的菜谱信息记录与其他数据库记录相关

若要移除的菜谱信息记录与其他数据库记录相关

通过

菜谱信息管理

管理员想要删除菜谱信息的信息点击删除按钮

移除的菜谱信息记录与其他数据库记录不相关

移除的菜谱信息记录与其他数据库记录不相关

通过

菜谱信息管理

管理员想要搜索菜谱信息的信息在输入框中输入菜谱信息名称搜索

如果输入的菜谱信息名字与数据库纪录相符合

如果输入的菜谱信息名字与数据库纪录相符合

通过

菜谱信息管理

管理员想要搜索菜谱信息的信息在输入框中输入菜谱名称搜索

如果输入的菜谱信息名字与数据库纪录不符。

输入的菜谱信息名字与数据库纪录不符

通过

6.2.4 笔记信息管理测试

表6-4 笔记信息管理用例表

模块测试

测试用例

预期结果

实际结果

是否通过

笔记信息管理

管理员想要添加笔记信息的信息输入笔记信息必填的信息

如果输入信息合法、与数据库记录相符的数据,可以添加成功

如果输入信息合法、与数据库记录相符的数据,可以添加成功

通过

笔记信息管理

管理员想要添加笔记信息的信息输入笔记信息必填的信息

输入信息不合法、与数据库记录不相符的数据

输入信息不合法、与数据库记录不相符的数据

通过

笔记信息管理

管理员想要修改笔记信息的信息点击修改按钮

如果输入的修改是不正当的,或者输入的是与数据库记录相符的

如果输入的修改是不正当的,或者输入的是与数据库记录相符的

通过

笔记信息管理

管理员想要修改笔记信息的信息点击修改按钮

输入的修改是正常字符的,或者输入的是与数据库记录不符的

输入的修改是正常字符的,或者输入的是与数据库记录不符的

通过

笔记信息管理

管理员想要删除笔记信息的信息点击删除按钮

若要移除的笔记信息记录与其他数据库记录相关

若要移除的笔记信息记录与其他数据库记录相关

通过

笔记信息管理

管理员想要删除笔记信息的信息点击删除按钮

移除的笔记信息记录与其他数据库记录不相关

移除的笔记信息记录与其他数据库记录不相关

通过

笔记信息管理

管理员想要搜索笔记信息的信息在输入框中输入笔记信息名称搜索

如果输入的笔记信息名字与数据库纪录相符合

如果输入的笔记信息名字与数据库纪录相符合

通过

笔记信息管理

管理员想要搜索笔记的信息在输入框中输入笔记信息名称搜索

如果输入的笔记信息名字与数据库纪录不符。

输入的笔记信息名字与数据库纪录不符

通过

6.3 系统测试的意义

整个系统的设计过程包括需求分析,功能设计,系统实现,以及软件的测试。需求分析的目的是为了弄清楚这个软件是否有很好的发展价值,以及它的可行性。功能的设计清楚地说明了该系统所具有的功能。本系统的实施目的是为了能够使用一套能够使用的美食分享系统。而对于软件的测试,就是对整个系统的检测。如果能及早发现问题,那么修改的代价就会更低,破坏范围也会更低。所以,在发布以前,要想发现问题,就得做好准备。如果有一天,已经把钱投入到了这个项目中,那么问题就会变成一个巨大的隐患,从而对用户造成更大的影响。

参考文献

[1]鲜易洲,杨蕊,吴蓉,巩培桢,吴丽丽.时食美食分享系统的设计与分析[J].电脑知识与技术,2021,17(09):85-87.

[2]李彤.基于PHP和MySQL的小型应用设计——以Android的美食和出行信息分享平台为例[J].计算机光盘软件与应用,2014,17(10):263-265.

[3]银莉,杜啸楠.基于Spring Boot和Vue的社区服务平台设计与实现[J].电子技术,2022,51(12):182-183.

[4]喻佳,吴丹新.基于Spring Boot的Web快速开发框架[J].电脑编程技巧与维护,2021(09):31-33.

[5]吴锋珍.基于主从同步的MySQL负载均衡设计与部署[J].湖南邮电职业技术学院学报,2022,21(02):40-43.

[6]廖卓,姚敏,余筱,黄俊铭.基于Keepalived和Mycat的MySQL数据库高可用性设计与实现[J].现代信息科技,2022,6(11):27-33.

[7]焦宇,李民,王欢,余开朝.基于MySQL性能调优的推荐系统优化设计[J].软件导刊,2022,21(09):108-112.

[8]吴锋珍.基于主从同步的MySQL负载均衡设计与部署[J].湖南邮电职业技术学院学报,2022,21(02):40-43.

[9]卢守东,高荣,徐辉,胡小春.以开发模式为主线的JSP课程教学探讨[J].电脑知识与技术,2022,18(15):164-165.

[10]妥泽花.基于黑盒测试与白盒测试的比较探究[J].电子世界,2021(11):55-56.

[11]张喻平.黑盒测试中测试用例优先级改进算法分析[J].电脑知识与技术,2020,16(02):91-92

[12]Lietz Kristina,Saremi Babak,Wiese Lena. Genealyzer: web application for the analysis and comparison of gene expression data[J]. BMC Bioinformatics,2023,24(1).

[13]Galimova E Y,Galimov T A. Intellectualization of agriculture information systems and actual software testing methods[J]. IOP Conference Series: Earth and Environmental Science,2022,1045(1).

[14]van der Putten Boas C.L.,Mendes C. I.,Talbot Brooke M.,de Korne Elenbaas Jolinda,Mamede Rafael,Vila Cerqueira Pedro,Coelho Luis Pedro,Gulvik Christopher A.,Katz Lee S.. Software testing in microbial bioinformatics: a call to action[J]. Microbial Genomics,2022,8(3).

[15]Strandberg, Per Erik,Afzal, Wasif,Sundmark, Daniel. Software test results exploration and visualization with continuous integration and nightly testing[J]. International Journal on Software Tools for Technology Transfer,2022(prepublish).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值