基于JSP技术的网上订餐系统.docx
《基于JSP技术的网上订餐系统.docx》由会员分享,可在线阅读,更多相关《基于JSP技术的网上订餐系统.docx(29页珍藏版)》请在冰豆网上搜索。
![基于JSP技术的网上订餐系统.docx](https://file1.bdocx.com/fileroot1/2023-7/25/42bf85d8-6fad-497d-b1e8-d5731a0d5e9d/42bf85d8-6fad-497d-b1e8-d5731a0d5e9d1.gif)
基于JSP技术的网上订餐系统
2012届毕业生
毕业设计说明书
题目:
基于JSP技术的网上订餐系统
院系名称:
专业班级:
计算机应用技术0902班
学生姓名:
学号:
2
指导教师:
教师职称:
讲师
2012年5月15日
摘要
本课题分析了中、小型餐饮店订餐模式,发现传统的订餐模式(人工的方式来进行操作的各项管理比如人工进行记录,顾客订餐,订餐信息管理,通过电话或QQ等方式联系进行关于交易的信息传递与交流)已经不能适应市场发展的需求,传统的订餐模式信息交换慢(只能进行一对一的交流)、配送速度慢、配送成本高等特点。
随着网络技术的发展、电子商务的普及,网上商城已经成为人类生活的一部分了,如淘宝网、QQ拍拍网等等。
但网上订餐还处于形成的初期,主要原因在于网上订餐对商品的配送有严格的要求。
网上订餐系统为中、小型快餐店提供一个较好的快餐销售平台,为顾客提供一个较好的订餐平台,为顾客提供更好更快的送餐服务让顾客满意,从而提高快餐的销量。
本课题设计的是一个基于互联网的B/S模式的网上订餐系统,能为客户提供网上选择浏览菜品介绍、订餐和快速配送等服务。
并为后台管理员提供一个服务平台实现用户信息与顾客订餐的管理,解决信息交换慢等问题,从而提高了服务的质量。
本文详细介绍了系统需求分析、顾客订餐流程,点单管理流程及网上订餐系统。
关键词:
网上订餐系统订单JavaMySQL
Titleonlinereservationsystem
Abstract
Thistopicanalyzesthemediumandsmallrestaurantsorderingpatterns,foundthatthetraditionalorderingpatterns(artificialapproachtothemanagementoperationssuchasmanualrecording,customerordering,orderinginformationmanagement,throughQQ,phoneorcontactforthetransmissionofinformationontradeandexchange)hasbeenunabletomeetmarketdemand,thetraditionalmodeofinformationexchangeorderingslow(onlyoneononeexchange),slowdelivery,andhighdistributioncosts.Withthedevelopmentofnetworktechnology,thepopularityofe-commerce,onlinestorehasbecomeapartofhumanlife,suchasTaobao,QQpatnetandsoon.Butonlineorderingisstillintheearlystagesofformation,mainlyduetoonlineorderinganddistributionofgoods,therearestrictrequirements.Onlineorderingsystemforsmall,mediumandfastfoodoutletssellingfastfoodagoodplatformtoprovidecustomerswithabetterorderingplatform,providecustomerswithbetterandfasterdeliveryserviceforcustomersatisfaction,therebyincreasingthesalesoffastfood.
ThisdesignisanInternet-basedB/Smodelofonlinereservationsystem,providingcustomerschoosetoviewonlineDescriptiondishes,reservationandfastdeliveryandotherservices.andbackofficeadministratorforaserviceplatformtoprovideuserinformationandcustomerorderingthemanagementtoaddressinformationexchangeslowandotherissues,therebyimprovingservicequality.Thistopicdescribesthesystemrequirementsanalysis,customerorderingprocess,managementprocessesandasinglepointofonlinereservationsystem.
Keywords:
onlinereservationsystemreservationJavaMySQL
目次
1绪论1
课题开发背景1
课题实现意义1
网站建设技术介绍2
Java的简介2
MySQL的简介3
2网站需求分析4
总体需求分析4
模块需求分析4
用户需求4
管理员需求4
3网站概要设计5
网站的系统功能模块设计5
网站的体系结构5
网站功能模块的设计5
网站的界面设计6
网站的数据库设计7
数据库需求分析7
数据库概念结构设计8
数据库逻辑结构设计9
4网站详细设计11
系统首页设计与实现11
系统各模块的详细设计与实现12
用户登录模块详细设计12
用户登录后模块详细设计14
网站后台管理模块详细设计14
餐品信息查询模块详细设计14
网站关键技术设计与实现16
存储过程的设计与实现16
餐品管理设计与实现17
5测试27
结论28
致谢29
参考文献30
1绪论
课题开发背景
21世纪,全球网络化,科技在突飞猛进。
我们的生活同网络通信信息相关。
计算机应用普及到我们社会和经济生活中的各个领域。
人们进行信息交流的深度与广度不断增加,这使得我们的服务、管理也相应跟得上时代的步伐去前进。
电子商务在此得到极大地普及与发展。
但餐饮业在电子商务中还处于形成的初期;传统的餐饮业中,大都是以实际门面的形式来进行宣传和交流的。
传统的订餐模式是用人工的方式来进行操作的各项管理比如人工进行记录,人工进行顾客个人信息,顾客订餐,订餐信息管理,通过电话等方式联系进行关于交易的信息传递与交流,从最平常的费用统计管理来讲,光是每个顾客的个人信息就是一道令人费解的过程,而在当今计算机不断发展的今天,这些问题可以轻而易举的通过计算机和网络来完成,不仅方便快捷而且简单易操作。
网上订餐和网上商场有很多想象之处,同样都是通过网络来选购自己需要的商品。
但是不同的是网上购物可以通过邮寄的方式,几天之内到达顾客的手中;而网上订餐则要求与快速送到客户手中。
很显然客户订餐,最关心的是我这份快餐什么时候送到,因为顾客尤其是上班的时候,吃饭时间是有规定的,定的快餐迟迟不到或者根本就送不到,会给客户造成很大的影响。
因此网上订餐提供顾客通过网络订餐的功能,并以最快的速度给客户送餐,并及时给顾客反馈订餐的信息。
课题实现意义
随着网络技术的发展,餐饮业已大大落后于其它行业。
如几年前,当其它行业早已开始利用英特网大展商机的时侯,国内众多的大型餐饮连锁店甚至还没有拥有自己的网站,餐饮经营者还不大习惯在电脑终端与供货商、顾客或其它人士进行沟通。
直到近几年,餐饮业主才开始认识、开发网络这个金矿。
虽然餐饮行业在利用英特网方面起步较晚,可所取的成绩仍令人注目与振奋。
国内许多大型餐饮品牌启用的网上订餐系统发系统已经初步具备了标准化、管理的制度化、使用方便化等优点,服务于全国各地,为广大消费者提供了方便。
网络的普及给传统餐饮业带来的巨大的影响,人们对订餐的要求也变得越来越高。
因此如何利用互联网推广餐饮信息和订餐服务,为广大人民群众提供更丰富、更方便、更快捷的订餐服务已成为了餐饮业发展的一个新方向。
网上订餐系统开发是为了更好地适应市场需求,缓解餐馆的地域限制,为消费者实现更便捷的方式,利用网上订餐系统和计算机设备实现在网上浏览﹑预定餐饮﹑菜品管理﹑会员管理等,提高工作效率,便于管理,使用户易于挑选和订购。
网上订餐系统的应用目标是通过这个系统使用户利用计算机可以足不出户就能在网上进行查浏览菜品介绍、点菜订餐,使管理人员利用计算机,快速方便的管理会员、订单以及菜单资料的维护,这样使得订餐变得更方便。
本次所要设计的系统是一个基于Web的订餐系统。
该系统的共划分为两个角色:
一个是普通用户,主要是通过系统在线选择要订购的餐饮并提交订单;另一个是管理员,主要是通过系统对用户、订单及菜品进行管理。
在设计开发中,采用基于Browser/Server的三层数据库应用体系结构,三层结构自成体系,任何一层的变化,不需要其他另外两层的变化,适宜于任何底层操作系统。
可将菜品、订单等实体封装成相应的类和与其对应的操作类,提高了对数据库操作的安全性和系统的可扩展性。
最终以实现会员注册,查询,提交订单等功能,后台菜品管理,菜单管理,会员管理,订单管理等网站基本信息等功能,充分利用计算机网络技术,改进现有的订餐方式,做到适合现代人生活的订餐方式。
网站建设技术介绍
本系统采用JAVA,JSP和mysql数据库设计而成的网上订餐系统。
Java具有跨平台的,代码重用性高,调试方便等优势。
JSP可以创建和运用动态、交互的web服务器应用程序。
同时,JSP具有向跨平台服务器的优点。
mysql是一个杰出的数据库平台,具有功能强大,安全可靠性高,并永久免费等特点,可用于大型联机事务处理、数据仓库及电子商务等。
、Java的简介:
1)?
简单(Java语法是C++语法的一个“纯净”版本);?
?
2)?
可移植性?
(一次编译到处运行)?
3)?
面向对象?
?
4)?
分布式(Java把打开套接字连接等繁琐的网络任务变得非常容易)?
?
5)?
健壮性(Java编译器会检查出很多其他语言在运行时刻才显示出来的错误,Java采用的指针模型可以消除重写内存和数据崩溃的可能)?
?
6)?
多线程(多线程编程的简单性是Java成为流行的服务器端开发语言的主要原因之一)?
?
7)安全(用Java可以构建防病毒和防篡改的系统)?
?
8)?
动态(Java可随意增加新的方法以及实例变量,而客户端却不需做任何的更改)?
?
9)体系结构中立(字节码与计算机体系结构无关,只要存在运行时系统,可在多种处理器上执行)?
MySQL的简介
MySQL是一个分布式的关系型数据库管理系统,具有客户/服务器体系结构。
MySQL是一个应用广泛的数据库管理系统,具有许多显着特点,例如,用户喜欢的易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性能价格比等。
MySQL系统中,数据库的管理采取了先进的动态管理机制,数据库的大小可以随着数据量的变化而缩小或扩大。
另外,用户数据都非常重要的和保密的,这些数据存储在MySQL系统中有绝对的安全性保障,有完善的用户账号策略和许可机制,只有经过授权的用户才能访问系统,并且执行相应的操作和访问允许访问的数据。
XX的用户既不能执行相应的操作,也不能访问数据库中的相应数据
2网站需求分析
总体需求分析
伴随着经济和网络技术的发展,人们的日常生活有了极大的改变,在线订餐已越来越普及。
本系统为了跟随社会的经济发展,通过在线订餐平台,消费者可以在线浏览菜单,将选中的菜品放入购物车并继续订餐,完成订餐后,向供应商发送订单,通过服务员派送客户所购菜品,通过此方式满足人们快捷方便的生活。
网上订餐系统无论是在应用的深度还是广度都是一个逐步发展的过程。
在开发一个局部系统时要充分考虑到局部系统和整个目标系统之间的相容性和完整性,以利于今后整个系统的建设。
网上订餐系统从总体上把握系统的设计,在具体的设计实现上我们围绕着两个方面的需求展开,即系统使用者(顾客用户)、、系统管理员。
模块需求分析
根据网上订餐系统的总体需求分析,可以将本系统做成顾客用户,管理员两个功能模块。
用户需求
顾客登录网上订餐系统后,需要浏览商品,浏览各个快餐店的食品,因此订餐系统需要有商品浏览的功能。
买家看到合适的商品后,要订购商品,因此订餐系统要有订购商品的功能。
买家看到更好的商品后可以删除原来的订单,因此订餐系统需要有删除餐品的功能。
网上订餐采用的银行支付的模式。
顾客提交订单后可以对商品进行评价,还可以进行留言。
管理员需求
管理员可以对顾客账号和用户信息进行管理,可以浏览,添加、修改、删除菜单,可以对用户所有订单进行管理,同时,也可以管理所有用户的留言信息。
3网站概要设计
网站的系统功能模块设计
3.1.1网站的体系结构
本次所要设计的系统是一个基于Web的订餐系统。
该系统的共划分为两个角色:
一个是普通用户,主要是通过系统在线选择要订购的餐饮并提交订单;另一个是管理员,主要是通过系统对用户、订单及菜品进行管理。
在设计开发中,采用基于Browser/Server的三层数据库应用体系结构,三层结构自成体系,任何一层的变化,不需要其他另外两层的变化,适宜于任何底层操作系统。
可将菜品、订单等实体封装成相应的类和与其对应的操作类,提高了对数据库操作的安全性和系统的可扩展性。
最终以实现会员注册,查询,购物,下单等功能,后台菜单管理,用户管理,订单管理等网站基本信息等功能,充分利用计算机网络技术,改进现有的订餐方式,做到适合现代人生活的订餐方式。
系统采用基于JSP的B/S三层模式(亦称BWD三层构架,即浏览器Browser→Web服务器→数据库服务器DatabaseServer或DBMS),客户端(前端)为IE浏览器,中间层为Web服务器,后端为数据库服务器,中间层与后端通过DAO接。
用户使用浏览器上网,向Web服务器发送请求,Web服务器处理请求,执行访问数据库等操作,并将结果信息组织成HTML页面发送给用户,在用户浏览器上显示。
图所示为B/S模式的基本架构。
图B/S模式的基本架构图
网站功能模块的设计
根据网上订餐系统的总体需求分析,可以将本系统做成顾客用户,管理员两个功能模块。
,需要对每个模块的功能进行设计。
根据模块的功能需求设计出模块应该包含的具体信息及各种具体信息之间的联系。
图网站功能结构图
网站的界面设计
简洁凝练的是网页界面基本要求之一,而强调简练是由网络的特性决定的。
网页设计中所采用的元素如点,线,面,图像等元素都是占据网络空间的,如果图片数据过大,就会相应的影响网页开启与传输速度,不利于传播。
网络同样要求在最短的时间里抓住访问者的视线,吸引人们的注意力,并且达到一扫而过便能接受到所传达的信息。
简练的界面处理可以更有效、快捷地传达信息。
本系统的界面设计采用将头部和底部做成通用模块包含于每一页当中的方法。
各模块首页将中间分成三部分,左部为登录信息,占中间页面的三分之一;中间部列出本模块的信息内容,右部为部分广告信息。
设计图如图所示。
图网站界面设计图
网站的数据库设计
设计数据库系统时应该首先充分了解用户的各个方面的需要,包括现有的以及将来可能增加的需求。
数据库设计一般包括如下几个步骤:
(1)数据库需求分析
(2)数据库概念结构设计
(3)数据库逻辑结构设计
3.3.1数据库需求分析
简单来说该网站有两个对象:
顾客用户、管理员。
用户浏览菜单信息、订单,管理员对各个用户信息增加、更新和查询操作。
同时,要求数据结构能够充分满足这些信息的输出和输入。
本次开发的数据库包括四个方面。
(1)用户信息数据:
存储用户编号、用户名、密码、性别、注册时间、QQ号、email、密保问题等有关数据。
(2)管理员信息:
包括管理员账户,密码。
(3)餐单信息数据:
存储餐品编号、图片地址、餐品名、餐品信息、快餐店、价格等。
(4)订单信息数据:
包括订单编号、餐品编号、用户编号、用户名、餐品图片、餐品名、餐品信息、快餐店等有关数据。
3.3.2数据库概念结构设计
经过上以的数据库需求分析,规划出的实体有管理员信息实体、用户信息实体、餐单实体、订单信息实体等。
各个实体具体的描述图如图至图所示。
图管理员信息实体图
…
图用户实体图
…
图餐单实体图
…
图订单信息实体图
3.3.3数据库逻辑结构设计
根据上面的实体图可将该网站的数据库设置四个数据表,具体到设计数据库时,管理员和用户信息表在同一表中,密码设置字符串不同得以区分。
具体的设计结果如表至所示:
表管理员信息表
字段名
数据类型及长度
说明
备注
id
Int(11)
管理员编号
主关键字
name
varchar(255)
管理员账号
不能为空
password
varchar(255)
管理员密码
不能为空
表用户信息表
字段名
数据类型及长度
说明
备注
id
varchar(11)
编号
主关键字
name
varchar(255)
用户名
不能为空
password
varchar(255)
密码
不能为空
Sex
varchar(20)
性别
允许为空
Time
varchar(255)
注册时间
允许为空
qq
varchar(255)
QQ号
允许为空
Email
varchar(255)
邮箱
允许为空
Problem1
varchar(255)
密保1
允许为空
Problem2
varchar(255)
密保2
允许为空
Address
varchar(255)
地址
允许为空
表餐单信息表
字段名
数据类型及长度
说明
备注
Food_id
Int(11)
编号
主关键字
image
Varchar255)
图片
允许为空
Food_name
Varchar255)
餐名
允许为空
Food_detail
Varchar255)
餐品信息
允许为空
Food_shop
Varchar255)
快餐店
允许为空
Food_price
varchar(255)
价格
允许为空
Mount
varchar(255)
数量
允许为空
Food_shop_address
Char(10)
快餐店地址
允许为空
表订单信息表
字段名
数据类型及长度
说明
备注
Order_id
Int(11)
订单编号
主关键字
Food_id
int(11)
餐品编号
允许为空
U_id
Int(11)
用户编号
允许为空
U_name
Varchar(20)
餐品名
允许为空
Image
Varchar(255)
餐品图
允许为空
Food_name
Varchar(255)
餐品名
允许为空
Food_detail
Varchar(255)
餐品信息
允许为空
Food_shop
Varchar(255)
快餐店
允许为空
4网站详细设计
系统首页设计与实现
网站首页页面如图所示。
采用框架结构实现,主要分为三个部分:
顶部为导航栏页面,中间左侧登录导航栏页面,右侧为首页主页面,底部为联系页面
图网站首页效果图
系统各模块的详细设计与实现
4.2.1用户登录模块详细设计
根据本文第三章的数据库设计建立好数据库后,就可以对信息模块进行详细设计了。
该模块主要是用户名、密码验证,餐品选择。
效果图如图所示。
用户可以选择作为用户或者是管理员登录。
便于用户查询需要的信息。
图用户登录效果图
用户信息搜索部分效果图如图所示。
该部分充分体现了网站的动态交互功能,客户可根据自己的需求进行浏览餐单、提交订单、在线留言。
图用户登录页面效果图
点击“我要订餐”显示如下:
图用户登录订餐页面效果图
4.2.2用户登录后模块详细设计
用户登录网站后应先进行注册,注册时注意用*标记的项目填写完整,否则不能注册成功。
成功登陆后可以对餐单信息进行查询,订餐,提交订单、进行留言。
4.2.3网站后台管理模块详细设计
后台管理模块主要是将各模块的管理部分组合在一起便于管理员进行管理。
管理员进入后台管理系统,管理员登录后台管理系统即进入了后台管理界面。
在后台管理列表列出了管理员所要进行的管理工作,主要有用户信息管理、餐单信息管理、订单信息管理。
单击任一管理目录,可展开下级列表,下级列表中列出了具体的管理内容。
管理员可以在用户信息管理页面上对餐品信息进行浏览、修改、添加、删除操作。
用户信息管理实现与订单信息管理类似不再赘述。
后台管理系统效果图如图所示。
图后台管理系统页面效果图
4.2.4餐品信息查询模块详细设计
餐品信息查询是本系统的功能实现模块,包括对餐品信息的添加、修改、删除。
效果图如下图所示。
图餐品信息查询页面效果图
添加餐品显示如下:
图餐品添加页面效果图
修改餐单信息如下:
图餐品修改页面效果图
网站关键技术设计与实现
4.3.1存储过程的设计与实现
存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可。
在Oracle中,若干个有联系的过程可以组合在一起构成程序包。
存储过程是利用SQLServer所提供的Tranact-SQL语言所编写的程序。
Tranact-SQL语言是SQLServer提供专为设计数据库应用程序的语言,它是应用程序和SQLServer数据库间的主要程序式设计界面。
它好比Oracle数据库系统中的Pro-SQL和Informix的数据库系统能够中的Informix-4GL语言一样。
这类语言主要提供以下功能,让用户可以设计出符合引用需求的程序:
1)、变量说明
2)、ANSI兼容的SQL命令(如Select,Update….)
3)、一般流程控制命令(if…else…、while….)
4)、内部函数
在系统的设计中使用到的存储过程t_food为例,用以插入餐品信息。
具体设计步骤为:
首先,利用MySQL创建存储过程,代码如下:
SETFOREIGN_KEY_CHECKS=0;
------------------------------
--Tablestructurefort_food
------------------------------
CREATETABLE`t_food`(
`food_id`int(11)NOTNULLauto_increment,
`image`