当前位置:文档之家› 大学毕业设计---基于java的网上订餐系统后台的实现餐饮管理系统

大学毕业设计---基于java的网上订餐系统后台的实现餐饮管理系统

大学毕业设计---基于java的网上订餐系统后台的实现餐饮管理系统
大学毕业设计---基于java的网上订餐系统后台的实现餐饮管理系统

基于JAVA的网上订餐系统后台的实现

THE REALIZATION OF ONLINE MEAL ORDERING SYSTEM BACKGROUND

BASED ON JAVA

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:

指导教师签名:日期:

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:

学位论文原创性声明

本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。

作者签名:日期:年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:日期:年月日

导师签名:日期:年月日

注意事项

1.设计(论文)的内容包括:

1)封面(按教务处制定的标准封面格式制作)

2)原创性声明

3)中文摘要(300字左右)、关键词

4)外文摘要、关键词

5)目次页(附件不统一编入)

6)论文主体部分:引言(或绪论)、正文、结论

7)参考文献

8)致谢

9)附录(对论文支持必要时)

2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。

4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写

2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画

3)毕业论文须用A4单面打印,论文50页以上的双面打印

4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档

5.装订顺序

1)设计(论文)

2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订

摘要

二十一世纪的今天是一个以网络为中心的,集网络化,信息化,数字化的现代化社会。随着Internet的飞速发展,使得互联网在人们生活的应用日渐广泛。如电子银行,网上购物,在线聊天,网络游戏,网络教学等。随着传统的购物方式与网络化的结合,“网购”这种新兴的消费方式,越来越受到人们的欢迎。为了扩展餐饮业的普及程度,同时解决电话订餐的低效率的弊端,网上订餐系统应运而生。

网上订餐系统实际上是快餐外卖结合网上购物,以及网络信息管理技术制作的一款在线支付的餐饮外卖软件。有效提高了订餐的效率,同时客户可以通过网页界面更加鲜明地与餐品打交道,最重要的是网上订餐系统有一个非常强大的后台管理系统,可以实现会员管理、菜品管理、订单管理以及营业统计等功能,这样大大提高了系统的效率和安全性。

在本毕业设计的内容是,设计并实现一个基于JavaWeb技术的网上订餐系统的后台部分,采用B/S(Browser/Server)结构,这种结构使得数据的处理都集中在服务器上进行,通过服务器端统一管理数据,便于保证数据的一致性。界面部分采用的是JSP(Java Server Pages)编程,以MyEclipse作为界面开发工具,使得用户界面更加友好。数据库方面,采用的是MySQL ,便于系统的数据管理,同时提高了系统数据的安全性。

关键词:网上订餐;信息管理;B/S;JSP技术

ABSTRACT

Twenty-first Century is a network centric, set-network, informational ,and digital modern society. With the rapid development of Internet, the Internet has been widely used in people's life. Such as: electronic banking, online shopping, online chat, online games, network teaching, etc. Among them, with the combination of the traditional way of shopping and network, "online shopping" to this emerging form of consumption, more and more people have welcomed. In order to expand the popularity of the catering industry, and solve the disadvantages of low efficiency of Telephone-ordering, Online meal ordering system arises at the historic moment. Online meal ordering system is actually fast food takeaway combined with online shopping, and network information management technology to produce a online payment takeaway food software. In order to improve the efficiency of ordering, and customers can more clearly contact with the meal product through the web interface, the most important is that Online meal ordering system has a very strong background management system, can realize the function of membership management, menu management, ordering management and business statistics. This has greatly enhanced the efficiency and safety of the system.

In the content of the graduation design, the design and implementation of the part of the backstage of an Online meal ordering system is based on the JavaWeb technology, and B/S(Browser/Server) structure. This structure makes data processing concentrated on the server, the server unified data management, so as to ensure data consistency. The part of the interface used the JSP (Java Server Pages) programming, and MyEclipse as the interface development tools, making the user interface more friendly.MySQL is used for data management system, to improve the security of system data.

Keywords: Online meal ordering; Information management; B/S; JSP

目录

第一章绪论 (1)

第二章开发平台和运行环境 (3)

第一节开发平台 (3)

第二节系统运行环境 (3)

第三节系统开发相关技术介绍 (4)

第三章网上订餐系统后台的需求分析 (8)

第一节可行性分析 (8)

第二节需求分析 (8)

第四章网上订餐系统后台的概要设计 (18)

第一节系统总体结构设计 (18)

第二节系统子模块功能介绍 (18)

第三节数据库设计 (19)

第五章网上订餐系统后台的详细设计 (25)

第一节登陆模块设计 (25)

第二节菜品信息管理模块设计 (26)

第三节会员信息管理模块设计 (28)

第四节管理员修改密码模块设计 (29)

第六章网上订餐系统后台的实现 (31)

第一节系统后台登陆模块 (31)

第二节用户信息管理模块 (31)

第三节菜品类别管理模块 (32)

第四节菜品信息管理模块 (33)

第五节订单管理模块 (34)

第六节留言板信息管理模块 (34)

第七节管理员密码修改管理模块 (35)

第七章系统测试 (36)

第一节测试目的与测试原则 (36)

第二节系统测试方案 (37)

参考文献 (42)

致谢 (43)

第一章绪论

一、本课题的背景与现状分析

随着科技的快速发展,网络的迅速崛起,互联网已经成为了为人们提供信息交流服务的最佳渠道,并日益充斥着社会生活的各个领域。在这样的时代浪潮的冲击下,许多传统行业都开始建立自己的网站,企业在主页中展示自己的特色,通过网络让更多的人了解自己,提升自己的市场影响力,并且通过网站与客户在线交流,建立自己的网络关系。

其中网上订餐系统是这些新兴的电子商务网站中的佼佼者,随着Internet的日益普及,人们生活节奏日益紧凑,许多上班族和大学生在中午或者晚上高峰期时间,并没有充足的时间就餐,为了不影响自己的工作效率,这些人往往选择吃一些即开即食的便当或者快餐,长期以来,对于这些群体的身体健康造成了不可忽视的危害。另外,由于处于就餐的高峰期,电话订餐往往处于占线的状态,不能及时响应客户的需求,这样严重影响了订餐的效率;同时,单调的快餐菜式往往不能满足人们的口味的要求。人们对于更高效率的订餐方式和更加多种多样的菜式的要求日益迫切,针对这些问题,网上订餐系统应运而生。

网上订餐系统是订餐业务与互联网技术的结合,计算机网络技术是眼下最便捷、最迅速的信息交流的技术。网上订餐系统能够同时处理大量的订餐信息,并且最快速地作出响应,这大大提高了订餐业务的效率。同时,企业可以在自己的系统主页展示各式各样的菜品,使客户仿佛置身于餐厅之中,面对着服务员手中的菜单。客户只需要登陆订餐系统的主页,就能够随时随地享受订餐服务。许多餐饮企业都开始开发自己的网上订餐业务,不仅大大提高了餐饮企业的服务质量,同时为用户提供了更方便、更快捷的订餐服务方式。

二、本课题的研究目的和意义

近几年来,类似淘宝天猫这样的大型网购网站如雨后春笋般兴起,网购俨然已经发展成为一种潮流。为了方便广大在校大学生和工作繁忙的在职从业者的就餐问题,本次毕业设计将开发一款十分具有当代网购特色的网上订餐系统,只需要一台连上互联网的电脑,人们就能够足不出户地订购自己想要的餐品。网上订餐服务业的快速便捷、直观这些优势是传统的电话订餐无法媲美的。在互联网如此普及的当代,人们广泛地接触电脑与网络,无论是学习、上班、娱乐都离不开计算机,这些都决定了网上订餐在不久的将来必定会在取代电话订餐成为订餐服务业的龙头。

然而伴随着网上订餐行业的普及,许多新的问题便接踵而来,比如:网页操作过于繁琐;系统界面不够直观,用户不能便捷地选择自己想要的菜品;系统界面的内容并不能得到及时更新;订餐请求没有得到及时响应等等。针对这些问题,

本次毕业设计都是要设计并实现一个具备强大功能的后台系统,能够及时地更新菜品信息,最迅速地响应订餐请求,确保系统前台信息的及时性,并且保护系统数据的安全性。

三、课题内容简介

本课题所实现的就是基于B/S架构,通过JSP技术来实现后台界面,用MySQL来管理后台数据。系统管理员通过前台登陆界面验证系统管理员身份,登陆成功之后进入后台管理主界面。后台主界面主要有以下功能:

●用户信息维护:管理员通过此功能来实现对已注册用户信息的浏览,并对甄选其中不合规的用户信息进行删除操作;

●菜品类别信息管理:管理员通过此功能来实现录入菜品类别的基本信息操作。包括类别名称,类别简介等,后台会自动将这些信息保存到数据库中;

●菜品信息管理:管理员通过菜品管理功能查看菜品信息,包括菜品ID、名称、菜品简介、分类、菜品图片、菜品价格等,同时可对着以上信息进行添加、修改和删除操作,实现及时更新菜品信息;

●订单管理:这是本次系统开发的另一大特色,管理员在订单管理界面下,可以直观地查看订单的详细信息,并及时做出受理或删除订单等操作,大大提高了网上订餐系统的操作;

●系统公告管理:管理员通过此功能,可以随时更新系统公告信息,在这里可以推荐一下网站的促销小广告,还可以删除过期信息;

●留言板信息管理:管理员可以通过此功能,浏览前台的用户留言信息,并对其中的意见建议进行回复,这样大大提高了管理员与用户之间的交互,使系统更加人性化。

第二章开发平台和运行环境

第一节开发平台

本系统采用的主要开发平台如下:

●Window 8.1:操作系统。

●JDK1.7.0_79:JAVA开发工具包,其安装过程可见本章第二节内容。

●MyEclipse:JAVA开发的主流IDE。安装过程详见第二节。

●MySQL :数据库设计管理工具。

●Visio:Windows office办公系列工具提供的专业画数据流图,流程图等

的工具。

第二节系统运行环境

一、JDK安装与配置环境变量

JDK (Java Development Kit)就是Java开发工具包,是提供给Java开发人员使用的,其中包括Java开发工具,如Applet、Java Web Start等;而JRE(Java Runtime Environment)也就是Java运行环境,其中包括Java运行需要的虚拟机(JVM,即Java Virtual Machine)和Java程序的核心类库等,如果想要运行一个开发好的Java程序,在计算机中只需要按照JRE即可。值得注意的是,JDK中包含了JRE,所以安装了JDK之后,就不用单独安装JRE了。

(一) 安装JDK

JDK的安装路径:F:\JAVA\jdk1.7.0_79;

在安装JDK的同时也安装好了JRE(Java Runtime Environment)路径是:F:\JAVA\jdk1.7.0_79\jre。

(二) 配置环境变量

1.新建JAVA_HOME环境变量:

JAVA_HOME指向的是JDK在系统中的位置,windows系统就是通过JAVA_HOME变量中的内容来寻找JDK的bin、lib等目录。设置这个环境变量的好处就是当JDK在系统的位置发生变动时,只需要修改JAVA_HOME中的内容,系统通过PATH变量就可以动态地查找到JDK中的编译指令所在的目录,而不需要在PATH做任何修改,在本次安装中将JAVA_HOME设置为F:\JAVA\jdk1.7.0_79。

2.编辑PATH系统变量:

由于DOS窗口只能运行当前目录下的指令,每次执行一个指令之前都必须打开该指令所在的目录。编辑PATH变量就是为了让windows系统帮助寻找bin

目录下存放的Javac、Java等编译指令,而不用每此执行编译都要打开bin目录,在本次安装中将PATH设置为F:\JAVA\jdk1.7.0_79\bin;

需要说明的是,系统本身就有PATH环境变量,只要把%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;复制到当前PATH变量之后,千万不要忘记在前面加上“;”隔开。

3.新建CLASS_PATH变量:

CLASS_PATH执行系统中class文件所在目录,与PATH变量功能类似,只要设置CLASS_PATH变量,windows系统就会帮助寻找CLASS_PATH下的class 文件,这样在DOS窗口在任意目录下都能执行class文件。在本次安装中将CLASS_PATH设置为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; %JAVA_HOME%\bin; 注意最前面加上"."和";"。

所有环境变量配置好后,打开命令提示符窗口,直接输入执行java或者javac 命令,如果出现了相应的信息,说明配置成功。

二、MyEclipse的安装与配置

在本次系统开发中所用到的开发工具就是知名的Java项目开发工具MyEclipse。简单而言,MyEclipse就是Eclipse的插件,使用MyEclipse在项目开发中可以支持代码编写、配置、测试以及除错等功能。

MyEclipse的安装十分简单,只要下载安装包,解压安装即可使用。本次安装中将MyEclipse安装在C:\Users\Administrator\Programs\MyEclipse目录下。

MyEclipse的编程界面与Eclipse大同小异,只要用过Eclipse的开发人员都能够游刃有余地使用MyEclipse。并且本机安装的是MyEclipse8.5,自带Tomcat 服务器。

三、MySQL 安装与配置

MySQL是Oracle公司开发的一款关系型数据库系统,是当今最流行的数据库,同时也是使用率最高的数据库。中小型的网站都选择MySQL,因为它体积小,容易配置,而且速度很快。MySQL支持SQL语言管理数据库。SQL是一种标准化的语言,使用它可以让存储、查询和存取数据库信息变得更加容易。

MySQL还提供JDBC数据库连接,只要在MyEclipse界面创建数据库连接,并添加连接驱动,就可以轻而易举地连接数据库。

MySQL的安装也十分简单,只要对照网上的教程安装就可以了。在本次安装中将MySQL安装在C:\Program Files\MySQL目录下。

第三节系统开发相关技术介绍

一、JSP动态网页开发技术

本此系统开发主要使用JSP页面开发技术对系统界面进行设计和开发。JSP

(Java Server Pages),即Java应用页面程序,是由Sun公司推出的一门基于Java 的Web动态页面技术[1]。编写JSP虽然类似于写HTML,但可以在JSP页面中编写Java代码,并且允许开发人员在页面中获取request、response等Web开发对象,实现与浏览器之间的交互。另外,JSP作为JavaEE的重要组成部分,JSP可以继承来自JavaEE的众多优点,使得开发人员在开发过程中更加简洁快速。同时学习JSP 也是JavaEE入门的必经之路。

JSP既依赖于也得益于JavaEE技术。其中继承了Java的“一次编写,处处运行”的可移植性使得开发人员可以更加专注于JSP的开发,而无需考虑系统层面的问题;Java的开放特性使得在市面上涌现出了许多的Web设计框架可供采开发人员采纳;面向对象的设计,为开发人员更加轻松地设计与实现安全稳定的Web在线系统提供了基础保障[3]。

JSP页面是有HTML代码和嵌入其中的Java代码所组成。JSP因为其中包含有Java代码,所以JSP同样具备Java的一些优点,如多线程性、可移植性等。ASP 要使用VBScript代码,PHP要运用Perl语言,而在JSP页面中可以直接编写Java代码,与JavaBean组件的契合度更高。

JavaBean其实是一种具有特殊结构的Java类,它通常用于数据的封装。JavaBean的每个属性都需要相应的setter、getter方法,分别用来修改和访问JavaBean的属性。JSP技术提供了三个操作JavaBean组件的标签,也就是JSP标签。这样Web开发人员只要通过在JSP页面中使用JSP标签,就可以实例化JavaBean对象,从而访问JavaBean的属性,进而调用其中的函数实现Java程序的功能。

JSP是继承了Java多线程的特性,可以充分利用硬件资源。另外,Java语言与平台无关,开发者可以将JSP部署在几乎任何操作系统上,UNIX系统可以为JSP 提供稳定可靠的安全运行环境;利用集群技术还可以把多台主机联合起来服务于JSP应用程序[7]。

总而言之,使用JSP动态页面开发技术可以降低开发人员的学习门槛和系统开发的成本,提高了编程代码可读性,便于开发出高性能的Web应用系统[10]。所以本次网上订餐系统开发采用了JSP技术。

二、JSP技术和ASP技术比较

除了JSP外,当然还有其他的一些构建动态Web应用的语言,如ASP、PHP 等。这些技术都能构建动态的Web应用,相比较而言这些技术各有千秋,但在我看来,JSP是其中比较优秀的一种。

JSP技术和ASP技术有许多相似的地方,二者都将页面逻辑设计和页面布局设计相分离[3]。但是二者的不同之处也很多,ASP是微软公司独自开发的,通常仅能在Windows平台上运行,与微软的服务器IIS搭配使用。对每个客户端请求,ASP解释程序都会缠上一个新的线程解释和执行。ASP都采用COM技术实现软件

的重用性,但是由于COM技术非常复杂,开发难度比较高。在数据处理方面,ASP采用的是ADO技术,通过ODBC来访问数据库。在服务器端需要建立数据源,并且需要相应数据库的ODBC及驱动程序。目前几乎所有的数据库都支持ODBC 技术,起ODBC驱动也容易得到。

JSP的核心技术是Servlet。对于Servlet程序,服务器仅需要加载一次,后续的请求用一个线程处理。当收到第一个请求时,先将其转换为Servlet,然后解释为Java字节码,再由Java虚拟机解释执行,当再次接收到请求的时候,不需要再次转换和编译而直接执行其字节码[3]。

三、JSP技术和PHP技术比较

PHP是一种开放源代码、跨平台的、服务器端嵌入的动态网页开发技术。PHP 通过在不同的平台上重新编译来适应不同的平台之间的差异,以此来满足跨平台的要求[13]。

ASP、JSP、PHP技术比较如表2-1所示。

表2-1 ASP、JSP、PHP技术比较

比较项目ASP JSP PHP

Web服务器IIS、PWS Apache、IIS、PWS

等Apache、IIS、PWS

运行平台Windows UNIX、Linux、

Windows、MacOS UNIX、Linux、Windows

组件技术COM JavaBean、EJB COM、JavaBean 自定义TAG语法无有无开放性无多家合作Sun、

IBM、BEA

自由软件

脚本支持VBScript Java、

EMAC-Script、Web

PHP

建立大型Web应用程

可以可以不宜

学习难度低较低低

Session管理有有有统一的数据库连接ADO、ODBC JDBC 无

程序执行速度快极快极快

PHP在Linux下有更好的编译环境。目前在Web应用中,Linux+Apache+MySQL已经称为公认的比较完善的开发组合。当然PHP也存在不

足之处,就在于其数据库的连接上,对于不同的数据库,PHP采用不同的语言来开发接口,这就导致了在数据库升级的时候,几乎需要重写全部的代码,这样就带来了极大的工作量。但是由于其语法简单,便于开发人员学习,PHP技术成为构建中小型Web应用的较为不错的选择。

相比之下,JSP技术的跨平台性是基于Java技术的。构建在Java虚拟机平台之上,几乎不需要对其进行任何改动[1]。JSP技术是采用JDBC来访问数据库的,对于不同的数据库操作只需要改动很少的一部分,甚至不需要任何修改。表2-1是对这几种技术的比较。

四、MVC三层框架相关技术简介

MVC框架全称是Model-View-Controller,即模型(Model)-视图(View)-控制器(Controller)的缩写,是一种典型的设计开发Web应用系统的模式:Model(模型)是在应用程序中制定业务流程的设定。模型层主要功能是接受来自系统其他层的请求,并返回处理结果。我们可以利用MVC设计模式,把应用程序的开发模型按照一定的规则划分开来,一个良好的划分层次对于优秀的设计是十分重要的。然后MVC并没有告诉我们模型的设计方法,只是告诉我们应该将应用程序组织划分成这么模型。

View(视图)在程序中是用户交互界面,与用户直接接触的就是视图层。在开发Web应用系统中,视图层可以概括为HTML界面。但随着对系统功能的要求越来越多,开发一个Web程序需要设计多个视图,这对于项目开发者来说也是一件十分具有挑战性的事情。

Controller(控制器)用于接收来自用户的请求,并调用模型层和视图层去处理这些请求。控制层的作用在相应用户的请求过程中是十分明显的,它就是一个分发器,对于不同的用户请求,调用不同的模型和视图。

如图2-1表示MVC组件类型的关系和功能。

模型

封装应用程序状态

相应状态查询

应用程序功能

通知视图变换

视图

解释模型

模型更新请求

发送用户请求给控制器运行控制器选择视图

控制器

定义应用程序行为

用户动作映射成模型更新选择响应的视图

状态查询

通知改变

视图选择

用户请求

状态改变

图2-1 MVC组件类型的关系和功能

相关主题
文本预览
相关文档 最新文档