博主介绍:翰文编程 - 资深全栈技术专家与教育导师

技术专长领域
深耕Java全栈开发(SpringBoot、SSM等主流框架实战)、前端技术栈(Vue.js、UniApp跨平台开发、微信小程序)、企业级应用开发(.NET、PHP)、数据科学(Python)及服务端开发(Node.js)。

行业经验
拥有18年一线开发与教学经验,主导过50+企业级信息化系统设计与实施,涵盖ERP、OA、电商平台等行业解决方案,熟悉从需求分析到部署运维的全生命周期管理。

☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不然下次找不到哟
我的博客空间发布了2000+题目解决方法案例  方便大家学习使用
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人

下载地址:

计算机毕业设计基于javaWeb知味观外卖网设计源码论文资源-CSDN下载

知味观外卖网主要分为2大模块:管理员权限模块、用户权限模块。不同的身份登录系统会有不同的权限,进行不同的操作,具有的操作权限如图4.2所示:

4.2 系统功能图

4.3 数据库层的设计

数据设计方案:采用DBMS方案——MYSQL. MYSQL关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。

4.3.1 概念模型设计

将需求分析得到的用户需求抽象为信息结构,即概念模型的过程就是概念结构设计,它是整个数据库设计的关键。

(2)系统中实体E-R图

根据知味观外卖网的设计系统的要求,规划出了以下一些实体。

客户反馈信息实体,主要包括客户反馈编号,标题,内容,用户,时间,状态 等信息实体。如图4.2所示:

图4.2 客户反馈实体属性图

用户实体就是用来记录用户信息的用户编号、用户名、密码、姓名、权限、地址、积分。如图4.3所示:

图4.3 用户实体属性图

分类实体就是用来记录分类编号、分类的信息。如图4.4所示:

图4.4 分类实体属性图

菜品实体就是用来记录发布菜品编号、菜品、分类、特色、材料、价格、图片的信息。如图4.6所示:

图4.6 菜品实体属性图

订单实体就是用来记录用户订购菜品的订单编号、内容、用户、时间、状态、就餐时间、价格的信息实体。如图4.7所示:

图4.7 订单实体属性图

详细实体就是用来记录详细编号、订单、菜品、价格、数量、用户的实体。如4.8所示:

图4.8 详细实体属性图

评论实体就是用来记录评论编号、菜品、评论、用户、时间的实体。如4.9所示:

图4.9 评论实体属性图

留言实体就是用来记录留言编号、内容、用户、时间的实体。如4.10所示:

图4.10 留言实体属性图

4.3.2 关系模式设计

一个实体型转换为一个关系模式的集合。实体的属性就是关系的属性,实体的码就是关系的码。

对于实体间的联系则有以下不同的情况:

知味观外卖网中,实体有权限实体,用户实体,分类实体,菜品实体,订单实体,详细实体,商家制作实体,商家送餐实体,留言实体,客户评价实体,客户反馈实体等等,他们之间的关系如图4.11所示:

图4.11 系统整体E-R图

4.4 本章小结

本章主要介绍的内容是总体设计或者概要设计,简单介绍了知味观外卖网的设计,主要是在架构设计、总体模块设计和数据库设计的方面介绍的,为进一步的详细设计做准备。


第5章  详细设计

详细设计阶段的任务就是把在总体设计阶段提出的比较抽象概括的解决问题的方法具体化,也就是“应该怎样具体地实现这个系统”。在本阶段将包括数据库的设计和每个模块的详细设计,确定实现模块功能所需要的算法和数据结构。

5.1 后台设计

5.1.1 角色权限设计

用户注册后或管理员输入自己的用户账号、密码,通过身份验证后可以进入相应的管理界面首页。用户页面分为修改个人信息、在线订餐、提交订单、查看订单等模块。管理员管理页面分为用户管理、菜品管理、分类管理、留言管理、评论管理等模块。

5.1.2 角色验证设计 

当用户需要登录的时候,需要有响应的页面来实现这一功能。登录界面是用来支持用户进行登录功能操作的界面,当在界面中输入用的用户名和密码后,就可以通过身份验证进入该系统。 登录界面需要让用户输入用户名、密码。如果是错误登录信息造成的还要显示错误信息。否则,当信息输入和权限选择正确时,将分别将用户导入各自对应的操作界面首页。

此系统用户分为注册用户和管理员两种。每种用户具有不同的权限,能完成不同的操作。用户有发布话题、查看留言等功能的权限。管理员用户具有系统的最高管理权限。用户自己注册,不需要由管理员来添加,但是需要管理员进行统一管理。用户登录和身份验证功能模块的设计流程如图5.1所示:

图5.1 登录流程图

用户登录信息验证界面是非常重要的一部分,它接收登录表单提交的信息,并在用户信息表里检验是否存在对应的用户,和判断用户的类型以便获得相应的权限。

5.2 数据库设计

大多数网络应用系统都需要后台数据库的支持。在Windows操作系统中,Access和MYSQL是最常见的网络后台数据库。在互联网上,很多人出于价格的考虑选择Access数据库,但是实现比较大的网络应用系统,还是应该选择MYSQL。本系统就是应用MYSQL数据库存储数据。

5.2.1 逻辑结构设计

1 用户( 用户编号,用户名,密码,姓名,权限,地址,电话,状态,积分 )

2 分类( 分类编号,分类 )

3 菜品( 菜品编号,菜品,分类,特色,材料,价格,描述,图片 )

4 订单( 订单编号,订单编号,内容,用户,时间,状态,就餐时间,价格,餐地点 )

5 详细( 详细编号,订单,菜品,价格,数量,用户 )

6 商家制作( 商家制作编号,订单,制作说明,用户,时间 )

7 商家送餐( 商家送餐编号,订单,送餐说明,用户,时间 )

8 留言( 留言编号,留言,用户,时间 )

9 客户评价( 客户评价编号,菜品,评价,客户,时间 )

10 客户反馈( 客户反馈编号,标题,内容,用户,时间,状态 )

5.2.2 物理结构设计

由各个关系模式和根据需求分析阶段数据字典的数据项描述,给出各数据表结构。

(1)客户反馈信息表如表5.1所示:

表5.1 客户反馈信息表

序号

字段名称

数据类型

长度

主键

描述

1

khfkid

INTEGER

11

客户反馈编号

2

bt

VARCHAR

40

标题

3

nr

VARCHAR

40

内容

4

yh

VARCHAR

40

用户

5

sj

VARCHAR

40

时间

6

zt

VARCHAR

40

状态

(2)用户信息表如表5.2所示:

表5.2 用户信息表

序号

字段名称

数据类型

长度

主键

描述

1

yhid

INTEGER

11

用户编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

5

qx

VARCHAR

40

权限

6

dz

VARCHAR

40

地址

7

dh

VARCHAR

40

电话

8

zt

VARCHAR

40

状态

9

jf

VARCHAR

40

积分

(3)分类信息表如表5.3所示:

表5.3 分类信息表

序号

字段名称

数据类型

长度

主键

描述

1

flid

INTEGER

11

分类编号

2

fl

VARCHAR

40

分类

(4)菜品信息表如表5.4所示:

表5.4 菜品信息表

序号

字段名称

数据类型

长度

主键

描述

1

cpid

INTEGER

11

菜品编号

2

cp

VARCHAR

40

菜品

3

fl

VARCHAR

40

分类

4

ts

VARCHAR

40

特色

5

cl

VARCHAR

40

材料

6

jg

VARCHAR

40

价格

7

ms

VARCHAR

40

描述

8

tp

VARCHAR

40

图片

(5)订单信息表如表5.5所示:

表5.5 订单信息表

序号

字段名称

数据类型

长度

主键

描述

1

ddid

INTEGER

11

订单编号

2

ddbh

VARCHAR

40

订单编号

3

nr

VARCHAR

40

内容

4

yh

VARCHAR

40

用户

5

sj

VARCHAR

40

时间

6

zt

VARCHAR

40

状态

7

jcsj

VARCHAR

40

就餐时间

8

jg

VARCHAR

40

价格

9

cdd

VARCHAR

40

餐地点

(6)详细信息表如表5.6所示:

表5.6 详细信息表

序号

字段名称

数据类型

长度

主键

描述

1

xxid

INTEGER

11

详细编号

2

dd

VARCHAR

40

订单

3

cp

VARCHAR

40

菜品

4

jg

VARCHAR

40

价格

5

sl

VARCHAR

40

数量

6

yh

VARCHAR

40

用户

(7)评论信息表如表5.7所示:

表5.7 评论信息表

序号

字段名称

数据类型

长度

主键

描述

1

plid

INTEGER

11

评论编号

2

cp

VARCHAR

40

菜品

3

pl

VARCHAR

40

评论

4

yh

VARCHAR

40

用户

5

sj

VARCHAR

40

时间

(8)留言信息表如表5.8所示:

表5.8 留言信息表

序号

字段名称

数据类型

长度

主键

描述

1

lyid

INTEGER

11

留言编号

2

ly

VARCHAR

40

留言

3

yh

VARCHAR

40

用户

4

sj

VARCHAR

40

时间

(9)商家制作信息表如表5.9所示:

表5.9 商家制作信息表

序号

字段名称

数据类型

长度

主键

描述

1

khpjid

INTEGER

11

客户评价编号

2

cp

VARCHAR

40

菜品

3

pj

VARCHAR

40

评价

4

kh

VARCHAR

40

客户

5

sj

VARCHAR

40

时间

(10)商家送餐信息表如表5.9所示:

表5.9 商家送餐信息表

序号

字段名称

数据类型

长度

主键

描述

1

sjscid

INTEGER

11

商家送餐编号

2

dd

VARCHAR

40

订单

3

scsm

VARCHAR

40

送餐说明

4

yh

VARCHAR

40

用户

5

sj

VARCHAR

40

时间

5.3 本章小结

本章主要是在上一章的总体设计的基础之上对系统进行详细设计,主要分为两个方面来设计,分别为后台设计和数据库设计,在后台设计方面,主要是介绍了系统的物理结构以及逻辑结构的设计。


第6章 编码与设计实现

6.1 程序编码

系统所有连接数据库代码,通过java类,DBO方法连接

主要通过open方法初始化链接数据链接

public void open()

{

 String driver = "com.mysql.jdbc.Driver";

   

    String url = "jdbc:mysql://127.0.0.1:3306/wms?characterEncoding=gb2312&mysqlEncoding=gb2312";

    // MySQL配置时的用户名

    String user = "root";

    // MySQL配置时的密码

    String password = "abc123";

  

    try {

      Class.forName(driver);

      conn = DriverManager.getConnection(url, user, password);

stmt=conn.createStatement();

System.out.println("打开数据库连接");

}

catch (Exception ex)

{

System.err.println("打开数据库时出错: " + ex.getMessage());

}

}

而在jsp页面通过<%@ page import="com.util.*"%>引用DBO方法来调用数据库链接

6.2 设计与实现

界面也称作UI(User Interface),是人机交互重要部分,也是系统给用户使用的第一印象,是整个系统的重要组成部分。所谓的用户体验大部分就是指界面设计的体验。

本系统的名称是“知味观外卖网”,界面要求是简洁大方,避免过度包装,目的是为了为用户和管理员提供一个操作平台,系统提供手机浏览,在线购买等功能,避免设计其他类的系统,以免喧宾夺主,反而违背软件系统设计的初衷。

  1. 系统页面

系统首页界面如图6.2,6.3所示:

图6.2 系统首页界面图

图6.3商品详细界面图

(2)留言板

查看留言,发表留言。发布留言界面如图6.3所示:

图6.3 留言界面

(3)用户注册

用户注册。注册回复如图6.5所示:

图6.4 用户注册界面

(4)我的购物车管理

我的购物车。购物车管理界面如图6.5所示:

图6.5 购物车管理界面

(5)管理员后台管理页面

管理员员管理主界面。管理管理如图6.6所示:

图6.6 管理员管理界面

(6)添加菜品页面

添加菜品界面。界面如图6.7所示:

图6.7 菜品管理界面

(7)订单管理页面

管理员对订单进行管理。界面如图6.8所示

 

图6.8 订单管理界面

服务支持
毕业设计:提供选题指导+技术架构建议(如基于微服务的校园订餐系统)
项目实战:可定制化开发教学(从零搭建SpringCloud Alibaba电商平台)
论文辅导:技术方案论证、系统测试数据生成方法论
职场进阶:BAT级架构设计案例拆解

更多推荐