基于JSP+MySQL实现(Web)在线食品交易平台

1.项目目标与要求

1.1 目标:

本项目旨在为买家与卖家搭建一个在线食品交易平台,既能帮助不方便出门的顾客购买食物,又能帮助食品实体店的店家通过本平台赚钱。通过天黑黑外卖系统卖家可以发布各种各样食品的信息(价格、简介、图片等),买家可以通过浏览店铺或者搜索菜名找到心仪的食品并下单购买。天黑黑外卖系统计划在 2016.7.22 日前完成,力求为买卖双方提供快捷便利的外卖平台。

1.2 项目功能需求:

  • 数据库建表,服务器平台搭建,网页界面设计
  • 用户登录,包括商家、用户
  • 用户修改个人信息,电话,送餐地址,密码等
  • 管理员可对用户信息进行查看和管理;管理员对商家进行查看和管理;
  • 商家录入菜单;
  • 餐点信息包括:
    • 餐点名称
    • 餐点类型(饮料、小吃、主食)
    • 库存数量
    • 餐点单价
    • 餐点图片
  • 菜单的修改、删除
    • 根据类型或关键字筛选相关菜单
    • 用户登录,选择餐点加入购物车
    • 购物车内餐点数量的修改、删除
  • 用户订单提交
    • 商家确认点单,库存数量修改
    • 历史订单查询,根据用户号或者用户信息查询用户历史订单
    • 餐点欢迎度分析,统计各类餐点的选购频率,按频率排序

2.项目内容

2.1 功能需求

2.1.1业务流程描述

系统功能模块的划分:

2.1.2处理流程的分析(顾客寻找菜品并且下单):

2.2 界面设计

顾客界面设计

顶部导航

顶部导航

左部导航

个人信息展示区

左部导航

其他简略信息展示区

店家界面设计

顶部导航

顶部导航

左部导航

店家信息展示区

左部导航

其他简略信息展示区

首页界面设计

Logo 区

登录入口

搜索框

搜索框

展示店铺区(自动按销量排序)

展示店铺区(自动按销量排序)

店铺界面设计

顶部导航

顶部导航

用户状态

商家信息展示区

商家信息展示区

商家信息展示区

菜品展示区

公告区

公告区

菜品展示区

顾客购物车区

顾客购物车区

2.3 系统设计

2.3.1 软件层次结构:

2.3.2 类图:

2.3.3 时序图

2.3.4 数据库表

表 1 顾客表

字段名称

数据类型

数据大小

存储信息

customerID

VCHAR

20

顾客的 ID

customerName

VCHAR

50

名字

customerPassword

VCHAR

32

用户密码

customerTel

VCHAR

20

用户电话

customerPhoto

VCHAR

500

用户头像

customerAddress

VCHAR

500

送餐地址

securityQuestion

VCHAR

500

密保问题

securityAnswer

VCHAR

500

密保问题答案

customerMoney

DOUBLE

消费者的余额

表 2 店家表

字段名称

数据类型

数据大小

存储信息

sellerID

VCHAR

20

店家的 ID

sellerName

VCHAR

50

店家名字

sellerPassword

VCHAR

32

店家密码

sellerTel

VCHAR

20

店家电话

shopID

VCHAR

20

店铺电话

securityQuestion

VCHAR

500

密保问题

securityAnswer

VCHAR

500

密保问题答案

表 3 店铺表

字段名称

数据类型

数据大小

存储信息

shopID

VCHAR

20

店铺的 ID

shopName

VCHAR

50

店名

shopType

VCHAR

10

店铺主营类型

shopTel

VCHAR

20

店铺电话

shopID

VCHAR

20

商家所开店铺 ID

shopAddress

VCHAR

500

商家地址

shopPhoto

VCHAR

500

店铺图片

shopLicense

VCHAR

10

店铺是否有执照

shopIntroduction

VCHAR

500

店铺简介

notice

VCHAR

500

店铺公告

state

INT

店的状态信息

表 4 菜品表

字段名称

数据类型

数据大小

存储信息

dishID

VCHAR

10

菜 ID

dishName

VCHAR

50

菜名

dishType

VCHAR

10

菜品类型(主食,小吃,饮料)

dishIntroduction

VCHAR

500

菜的介绍

shopID

VCHAR

20

菜所属店铺 ID

dishPrice

DOUBLE

菜单价

dishStock

INT

菜的库存

dishPhoto

VCHAR

500

菜的照片

hot

INT

菜的销量

表 5 订单表

字段名称

数据类型

数据大小

存储信息

orderID

VCHAR

10

订单 ID

shopID

VCHAR

20

店铺 ID

customerID

VCHAR

20

顾客 ID

dishID

VCHAR

10

菜品 ID

quantity

INT

购买数量

totalPrice

DOUBLE

本份订单总价

dealTime

DATE

下单时间

表 6 管理员表

字段名称

数据类型

数据大小

存储信息

adminID

VCHAR

20

管理员 ID

userName

VCHAR

50

用户名

password

VCHAR

32

管理员密码

2.4 系统测试

2.4.1 测试环境:

  • 所有实现与测试都是在 Windows10 操作系统的 PC 下实现的;
  • JSP 页面和 servlet 代码的编写是在 Eclipse;
  • 用 Tomcat 来响应 JSP 页面的请求;
  • 所有数据都保存在 MySQL 数据库下。

2.4.2 测试截图:

首页:

店铺的浏览:

登录:

注册:

用户个人中心

用户订单查询:

用户资料修改:

店家店铺中心:

店家订单处理:

店家食品编辑:

3.课程总结

3.1 成果:

项目圆满完成了外面系统预期实现的所有功能。

在顾客方面,实现了以下功能:

  • 浏览菜单
  • 搜索(按热度搜索/按食品种类搜索)
  • 编辑个人资料,包括:
    • 顾客的头像,
    • 顾客的名字,
    • 顾客的联系电话,
    • 顾客希望送餐的地址 ,
    • 顾客登录的密码,
    • 顾客用以找回密码的密保问题和密保答案
  • 购买商品
  • 查看历史订单

在店家方面,实现了如下功能:

  • 编辑个人资料,包括
    • 店家名字,
    • 店家联系电话,
    • 店家登入密码,
    • 店家用以找回密码的密保问题和密保答案
  • 店家开店
  • 编辑店铺资料,包括:
    • 店铺的图片,
    • 店铺的名字,
    • 店铺联系电话,
    • 店铺实际地址,
    • 店铺的介绍,
    • 店铺最近公告
  • 编辑食品资料,包括:
    • 食品图片,
    • 食品名称,
    • 食品价格,
    • 食品类型,
    • 食品库存
  • 处理订单:接受订单 | 拒单

在管理员方面,实现了下面的功能:

  • 店家审核
  • 添加/修改店家
  • 添加/修改用户
  • 订单处理

所有用户都有登录,注册等功能。

另外用户,商家和客户可以修改自己信息并能够通过密保找回密码;

在安全性方面,系统对用户的登录密码进行加密,确保用户密码不外泄;

在智能推荐方面,系统通过对食品销量进行排序,优先对顾客提供高质量的菜品等等。

3.2 不足之处:

虽然项目完成了预期实现的功能但仍然有不足之处,首先,即使对密码加密,数据库没有用安全软件保护,所以可能被不法黑客恶意攻击,窃取数据库信息,存在较大的信息遭窃取的风险,其次,用户上传新的图片之后,系统不会删除之前上传的图片,在一定程度上在形成了系统的冗余。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神仙别闹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值