食品管理系统

目录

[第1章 系统概述](#第1章 系统概述)

[第2章 可行性研究](#第2章 可行性研究)

[2.1 项目背景及意义](#2.1 项目背景及意义)

[2.2 可行性研究](#2.2 可行性研究)

[第3章 需求分析](#第3章 需求分析)

[3.1 功能性需求](#3.1 功能性需求)

[第4章 总体设计](#第4章 总体设计)

[4.1 系统的功能模块图。](#4.1 系统的功能模块图。)

4.2各功能模块简介

4.3主要业务流程

[第5章 详细设计](#第5章 详细设计)

[5.1 食品管理系统页面](#5.1 食品管理系统页面)

5.2个人中心页面

[5.3 系统管理页面](#5.3 系统管理页面)

5.3.1用户管理子页面:

5.3.2食材信息管理子页面:

5.3.3食疗处方管理子页面:

5.3.4公告管理子页面:

[5.4 数据库](#5.4 数据库)

[第6章 系统实现与部署](#第6章 系统实现与部署)

[6.1 代码实现](#6.1 代码实现)

[6.2 数据库连接图](#6.2 数据库连接图)

[第7章 测试](#第7章 测试)

[7.1 测试目标](#7.1 测试目标)

7.2测试用例

[7.2.1 个人中心测试用例](#7.2.1 个人中心测试用例)

[7.2.2 系统管理测试用例](#7.2.2 系统管理测试用例)

[7.2.3 食材食品管理系统测试用例](#7.2.3 食材食品管理系统测试用例)

[7.4 测试总结](#7.4 测试总结)

[第8章 总结](#第8章 总结)

[8.1 存在的不足](#8.1 存在的不足)

[8.2 心得体会](#8.2 心得体会)
第1章 系统概述

1.1 系统背景

随着人们生活水平的提高,对于食品的管理和健康饮食的需求也越来越高。传统的食品管理方式已经无法满足人们的需求,因此需要开发一个食品管理系统,来实现对食品的信息化管理。

1.2 系统功能

食品管理系统主要包括个人中心、系统管理和食材食品管理系统三个模块。个人中心模块包括密码修改功能;系统管理模块包括用户管理、食材信息管理、食疗处方管理和公告管理功能;食材食品管理系统模块包括注册和登录功能,以及登录是登录账号密码验证码,注册是账号密码确认密码。

1.3 系统实现技术

食品管理系统采用 Servlet 技术实现,数据库采用 MySQL 数据库。

1.4 系统意义

食品管理系统的实现,可以提高食品管理的效率和质量,方便用户对食品的管理和查询,同时也可以为用户提供健康饮食的建议和指导。

第2章 可行性研究

2.1 项目背景及意义

随着人们生活水平的提高,对于食品的管理和健康饮食的需求也越来越高。传统的食品管理方式已经无法满足人们的需求,因此需要开发一个食品管理系统,来实现对食品的信息化管理。

2.2 可行性研究

2.2.1 技术可行性研究

食品管理系统采用 Servlet 技术实现,数据库采用 MySQL 数据库。Servlet 是一种服务器端的 Java 技术,它可以处理客户端的请求,并返回相应的响应。MySQL 是一种关系型数据库管理系统,它可以存储和管理大量的数据。因此,从技术上讲,食品管理系统是可行的。

2.2.2 经济可行性研究

食品管理系统的开发成本主要包括人力成本、硬件成本和软件成本。人力成本主要包括开发人员的工资和福利;硬件成本主要包括服务器的购买和维护费用;软件成本主要包括数据库管理系统的购买和维护费用。由于食品管理系统的用户数量较少,因此开发成本相对较低。同时,食品管理系统的运行成本也较低,主要包括服务器的运行费用和数据库管理系统的运行费用。因此,从经济上讲,食品管理系统是可行的。

2.2.3 操作可行性研究

食品管理系统的操作界面简单直观,用户可以通过浏览器进行访问和操作。同时,食品管理系统的操作流程也比较简单,用户可以轻松地完成注册、登录、查询等操作。因此,从操作上讲,食品管理系统是可行的。

2.2.4 法律可行性研究

食品管理系统的开发和使用符合相关的法律法规,不存在任何法律风险。

第3章 需求分析

3.1 功能性需求

3.1.1 个人中心

个人中心模块包括密码修改功能。用户可以通过个人中心模块修改自己的密码。

3.1.2 系统管理

系统管理模块包括用户管理、食材信息管理、食疗处方管理和公告管理功能。

用户管理功能:管理员可以通过用户管理功能添加、删除、修改用户信息。

食材信息管理功能:管理员可以通过食材信息管理功能添加、删除、修改食材信息。

食疗处方管理功能:管理员可以通过食疗处方管理功能添加、删除、修改食疗处方信息。

公告管理功能:管理员可以通过公告管理功能添加、删除、修改公告信息。

3.1.3 食材食品管理系统

食材食品管理系统模块包括注册和登录功能,以及登录是登录账号密码验证码,注册是账号密码确认密码。

注册功能:用户可以通过注册功能注册一个新的账号。

登录功能:用户可以通过登录功能登录到系统中。

登录账号密码验证码:用户在登录时需要输入账号、密码和验证码。

注册账号密码确认密码:用户在注册时需要输入账号、密码和确认密码。

3.2 非功能性需求

3.2.1 性能需求

食品管理系统的性能需求主要包括响应时间、吞吐量和并发用户数等。响应时间是指从用户发起请求到系统返回响应的时间间隔;吞吐量是指系统在单位时间内处理的请求数量;并发用户数是指系统同时处理的用户数量。为了满足性能需求,食品管理系统需要采用高效的算法和数据结构,优化数据库设计,提高服务器的性能和扩展性。

3.2.2 安全需求

食品管理系统的安全需求主要包括数据保密性、数据完整性和用户认证等。数据保密性是指保护系统中的数据不被非法访问和泄露;数据完整性是指保证系统中的数据不被非法修改和破坏;用户认证是指验证用户的身份和权限,防止非法用户访问系统。为了满足安全需求,食品管理系统需要采用加密技术、数字签名技术和访问控制技术等。

3.2.3 运行环境需求

食品管理系统的运行环境需求主要包括操作系统、数据库管理系统和 Web 服务器等。操作系统可以选择 Windows Server 或 Linux;数据库管理系统可以选择 MySQL 或 Oracle;Web 服务器可以选择 Tomcat 或 Apache。为了满足运行环境需求,食品管理系统需要进行兼容性测试和性能测试,确保系统在不同的运行环境下能够正常运行。、
第4章 总体设计

4.1 系统的功能模块图。

4.2各功能模块简介

  1. 个人中心:该模块主要包括密码修改功能,用户可以通过该模块修改自己的密码。
  2. 系统管理 :该模块主要包括用户管理、食材信息管理、食疗处方管理和公告管理功能。
    • 用户管理:管理员可以通过该模块添加、删除、修改用户信息。
    • 食材信息管理:管理员可以通过该模块添加、删除、修改食材信息。
    • 食疗处方管理:管理员可以通过该模块添加、删除、修改食疗处方信息。
    • 公告管理:管理员可以通过该模块添加、删除、修改公告信息。
  3. 食材食品管理系统 :该模块主要包括注册和登录功能,以及登录是登录账号密码验证码,注册是账号密码确认密码。
    • 注册:用户可以通过该模块注册一个新的账号。
    • 登录:用户可以通过该模块登录到系统中。
    • 登录账号密码验证码:用户在登录时需要输入账号、密码和验证码。
    • 注册账号密码确认密码:用户在注册时需要输入账号、密码和确认密码。

4.3主要业务流程

(1)用户及管理员登录流程图

对于系统的安全性的第一关,就是用户想要进入系统,必须通过登录窗口,输入自己的登录信息才可以进行登录,用户输入的信息准确无误后才可以进入到操作系统界面,进行功能模块的相对应操作,如果用户输入的信息不正确,则窗口出现提示框,用户登录失败,返回到第一步进行重新输入,如图3-1所示。

登录流程图

(2)信息添加流程

需要随时添加所需要的数据信息,对于用户添加信息,需要根据添加界面,根据选框的内容进行填写所要添加的数据信息,信息输入完成后判断数据信息是否符合要求,符合要求则添加完成,用户所添加的信息不符合要求,则需要返回到第一步,重新输入数据信息,再进行判断操作,如图3-2所示。

信息添加流程图

(3)信息删除流程

不管是哪个用户角色进入到不通的系统操作界面,都可以进行不同的信息内容的操作功能,对用系统数据信息的删除,用户一旦将信息删除,那么该删除的数据信息将无法恢复,所以用户在对数据删除事,一定判断删除的内容是否是确定要删除的,确定无误后选择确定删除操作,如图3-3所示。

信息流程图

第5章 详细设计

5.1 食品管理系统页面

5.1.1注册区域:

账号输入框、密码输入框、确认密码输入框、注册按钮。

5.1.2 登录区域:

账号输入框、密码输入框、验证码输入框、登录按钮。

5.2个人中心页面

5.2.1 密码修改区域:

包含旧密码输入框、新密码输入框、确认新密码输入框、保存按钮。

5.3 系统管理页面

5.3.1用户管理子页面:

添加用户按钮、用户列表(包含用户名等信息及对应的编辑、删除按钮)。

5.3.2食材信息管理子页面:

添加食材按钮、食材列表(包含食材名称等信息及对应的编辑、删除按钮)。

5.3.3食疗处方管理子页面:

添加处方按钮、处方列表(包含处方名称等信息及对应的编辑、删除按钮)。

5.3.4公告管理子页面:

添加公告按钮、公告列表(包含公告标题等信息及对应的编辑、删除按钮)。

5.4 数据库

user 表:

|------------|---------|-----|-----|----|----|-------|
| 字段名 | 数据类型 | 长度 | 允许空 | 主键 | 外键 | 说明 |
| id | int | 11 | 否 | 是 | 无 | 用户 ID |
| username | varchar | 50 | 否 | 否 | 无 | 用户名 |
| password | varchar | 50 | 否 | 否 | 无 | 密码 |
| real_name | varchar | 50 | 否 | 否 | 无 | 真实姓名 |
| user_sex | varchar | 10 | 否 | 否 | 无 | 用户性别 |
| user_phone | varchar | 50 | 否 | 否 | 无 | 用户电话 |
| user_text | varchar | 255 | 否 | 否 | 无 | 用户描述 |
| user_type | varchar | 10 | 否 | 否 | 无 | 用户类型 |

food 表:

|--------------|---------|-----|-----|----|----|-------|
| 字段名 | 数据类型 | 长度 | 允许空 | 主键 | 外键 | 说明 |
| id | int | 11 | 否 | 是 | 无 | 食材 ID |
| food_name | varchar | 50 | 否 | 否 | 无 | 食材名称 |
| food_type | varchar | 50 | 否 | 否 | 无 | 食材类型 |
| food_pingjia | varchar | 50 | 否 | 否 | 无 | 食材评价 |
| food_miaosu | varchar | 50 | 否 | 否 | 无 | 食材描述 |
| food_text | varchar | 255 | 否 | 否 | 无 | 食材文本 |

notice 表:

|-------------|----------|-----|-----|----|----|-------|
| 字段名 | 数据类型 | 长度 | 允许空 | 主键 | 外键 | 说明 |
| id | int | 11 | 否 | 是 | 无 | 公告 ID |
| notice_name | varchar | 50 | 否 | 否 | 无 | 公告名称 |
| notice_text | varchar | 255 | 否 | 否 | 无 | 公告文本 |
| notice_type | varchar | 10 | 否 | 否 | 无 | 公告类型 |
| create_date | datetime | 0 | 否 | 否 | 无 | 创建日期 |

shiliao 表:

|----------------|---------|-----|-----|----|----|---------|
| 字段名 | 数据类型 | 长度 | 允许空 | 主键 | 外键 | 说明 |
| id | int | 11 | 否 | 是 | 无 | 食疗处方 ID |
| shiliao_name | varchar | 50 | 否 | 否 | 无 | 食疗处方名称 |
| shiliao_fangan | varchar | 255 | 否 | 否 | 无 | 食疗处方方案 |
| shiliao_text | varchar | 255 | 否 | 否 | 无 | 食疗处方文本 |

第6章 系统实现与部署

6.1 代码实现

6.1,1 AuthServlet

用于处理HTTP POST请求。在该类中,实现了对不同动作(action)的处理,如登录(login)、注册(register)、登出(logout)、生成验证码(validationCode)和重置密码(resetPassword)

6.1,2 FoodServlet

用于处理食材信息模块的请求。在该类中,根据传入的action参数执行不同的操作,包括增加食材信息、删除食材信息、修改食材信息、根据主键ID查询食材详情或编辑页面等功能。

6.1,4 ShiliaoServlet

用于处理食疗处方模块的请求。在该类中,根据传入的action参数执行不同的操作,包括增加食疗处方信息、删除食疗处方信息、修改食疗处方信息、根据主键ID查询食疗处方详情或编辑页面等功能。

6.1,5 UserServlet

用于处理用户模块的请求。该类包含了处理增加用户信息、删除用户信息、修改用户信息、查询用户详情或编辑页面等功能的逻辑。

第7章 测试

7.1 测试目标

本次测试的目标是验证食品管理系统的各个功能是否正常运行,包括个人中心、系统管理和食材食品管理系统等模块。同时,测试还将检查系统的性能、安全性和兼容性等方面是否满足要求。

本次测试将覆盖食品管理系统的所有功能,包括个人中心的密码修改功能,系统管理的用户管理、食材信息管理、食疗处方管理和公告管理功能,以及食材食品管理系统的注册和登录功能等。

7.2测试用例

7.2.1 个人中心测试用例

|----|-----------------|----------|------------|
| 编号 | 测试步骤 | 预期结果 | 实际结果 |
| 1 | 点击"个人中心"按钮 | 进入个人中心页面 | 成功进入个人中心页面 |
| 2 | 点击"密码修改"按钮 | 进入密码修改页面 | 成功进入密码修改页面 |
| 3 | 输入旧密码、新密码和确认新密码 | 提示密码修改成功 | 成功修改密码 |

7.2.2 系统管理测试用例

|----|----------------------------|------------|--------------|
| 编号 | 测试步骤 | 预期结果 | 实际结果 |
| 1 | 点击"系统管理"按钮 | 进入系统管理页面 | 成功进入系统管理页面 |
| 2 | 点击"用户管理"按钮 | 进入用户管理页面 | 成功进入用户管理页面 |
| 3 | 点击"添加用户"按钮 | 进入添加用户页面 | 成功进入添加用户页面 |
| 4 | 输入用户名、密码和确认密码 | 提示用户添加成功 | 成功添加用户 |
| 5 | 点击"食材信息管理"按钮 | 进入食材信息管理页面 | 成功进入食材信息管理页面 |
| 6 | 点击"添加食材"按钮 | 进入添加食材页面 | 成功进入添加食材页面 |
| 7 | 输入食材名称、食材类型、食材评价、食材描述和食材文本 | 提示食材添加成功 | 成功添加食材 |
| 8 | 点击"食疗处方管理"按钮 | 进入食疗处方管理页面 | 成功进入食疗处方管理页面 |
| 9 | 点击"添加处方"按钮 | 进入添加处方页面 | 成功进入添加处方页面 |
| 10 | 输入处方名称、处方方案、处方文本 | 提示处方添加成功 | 成功添加处方 |
| 11 | 点击"公告管理"按钮 | 进入公告管理页面 | 成功进入公告管理页面 |
| 12 | 点击"添加公告"按钮 | 进入添加公告页面 | 成功进入添加公告页面 |
| 13 | 输入公告名称、公告文本、公告类型和创建日期 | 提示公告添加成功 | 成功添加公告 |

7.2.3 食材食品管理系统测试用例

|----|----------------|--------------|----------------|
| 编号 | 测试步骤 | 预期结果 | 实际结果 |
| 1 | 点击"食材食品管理系统"按钮 | 进入食材食品管理系统页面 | 成功进入食材食品管理系统页面 |
| 2 | 点击"注册"按钮 | 进入注册页面 | 成功进入注册页面 |
| 3 | 输入账号、密码和确认密码 | 提示注册成功 | 成功注册用户 |
| 4 | 点击"登录"按钮 | 进入登录页面 | 成功进入登录页面 |
| 5 | 输入账号、密码和验证码 | 提示登录成功 | 成功登录系统 |

7.3 测试结果分析

通过对测试用例的执行,我们发现食品管理系统的各个功能都能够正常运行,系统的性能、安全性和兼容性等方面也满足要求。但是,在测试过程中,我们也发现了一些问题,例如:

  1. 在密码修改功能中,输入旧密码错误时,系统没有提示错误信息。
  2. 在用户管理功能中,添加用户时,输入的用户名已经存在时,系统没有提示错误信息。
  3. 在食材信息管理功能中,添加食材时,输入的食材名称已经存在时,系统没有提示错误信息。

针对以上问题,我们将在后续的开发过程中进行修复和优化。

7.4 测试总结

本次测试是对食品管理系统的一次全面测试,通过测试,我们验证了系统的各个功能是否正常运行,系统的性能、安全性和兼容性等方面是否满足要求。同时,我们也发现了一些问题,这些问题将在后续的开发过程中进行修复和优化。

第8章 总结

8.1 存在的不足

在本次课程设计中,我们虽然完成了食品管理系统的开发,但是在系统的功能、性能和安全性等方面还存在一些不足之处。例如:

  1. 系统的功能还不够完善,例如在食材信息管理功能中,没有提供食材的图片上传功能。
  2. 系统的性能还需要进一步优化,例如在系统的响应时间和吞吐量等方面还需要进一步提高。
  3. 系统的安全性还需要进一步加强,例如在用户认证和数据加密等方面还需要进一步完善

完整源码

​​​​​​​********

相关推荐
苹果醋338 分钟前
React源码02 - 基础知识 React API 一览
java·运维·spring boot·mysql·nginx
Hello.Reader1 小时前
深入解析 Apache APISIX
java·apache
了一li1 小时前
Qt中的QProcess与Boost.Interprocess:实现多进程编程
服务器·数据库·qt
菠萝蚊鸭1 小时前
Dhatim FastExcel 读写 Excel 文件
java·excel·fastexcel
码农君莫笑1 小时前
信管通低代码信息管理系统应用平台
linux·数据库·windows·低代码·c#·.net·visual studio
旭东怪2 小时前
EasyPoi 使用$fe:模板语法生成Word动态行
java·前端·word
007php0072 小时前
Go语言zero项目部署后启动失败问题分析与解决
java·服务器·网络·python·golang·php·ai编程
∝请叫*我简单先生2 小时前
java如何使用poi-tl在word模板里渲染多张图片
java·后端·poi-tl
别致的影分身2 小时前
使用C语言连接MySQL
数据库·mysql
ssr——ssss2 小时前
SSM-期末项目 - 基于SSM的宠物信息管理系统
java·ssm