网上订餐系统的设计与实现毕业论文.docx
网上订餐系统的设计与实现毕业论文 河南财经学院本科生毕业论文(设计)网上订餐系统的设计与实现 院系名称 姓名 学号 专业 指导教师 2022年5月3日星期二 摘要 随着麦当劳,肯德基等洋味十足的快餐店越来越密集的出现在城市的大街小巷,越来越多的消费者光顾它们。然而一旦走进这些店铺,大多数人看到的都是铺天盖地排长龙的等待购买的人群、领餐后茫然寻找座位的人群以及因为人太多等不及购买而进去又徘徊出来的人。当然国内其他大型餐饮或者其他行业也都会出现类似的现象。 面对以上这种现象,国民迫切的需要一种实际的解决方法,一个功能完备但是操作简单的订餐点餐系统。 针对目前网络订餐网站的这种局限性,我们提出并设计实现了这个网络订餐系统。 在开发设计中,采用B/S(Browser/Server)结构,这种结构使得数据只有结果集合在浏览器中显示,数据的处理在服务器进行,而且由于通过服务器端统一管理数据,易于保证数据的一致性。数据库方面,推荐业界具有领导地位的关系数据库管理系统Microsoft SQL sever2000,使系统安全性能更高。同时采用当前正在流行的JSP(Java Server Pages)编程,用户界面更友好。 在开发中选择了JSP+JavaBean+SQL2000的模式,实现了应用程序逻辑和页面显示分离,界面设计更简单。JavaBean可重用的软件组件满足小型应用,同时使编程人员投入量精力便可重用组件,在简单的应用中可以充分考虑。(B/S结构应用开发秘笈作者:陈卫国防工业出版社 2022) 关键词:餐饮;网上订餐管理系统;JSP,B/S Abstract With such as McDonald's, KFC fast-food restaurant on the more densely populated with dye-in-the-wood appear in city streets, more and more consumer patronage them. However, once walked into these shops, most people saw a deluge of long queues of people waiting to buy, and bring postprandial vacant seat because of the crowd and for too many people can't wait to buy and go in and around the cream of the crop. Of course other domestic large food or other industry also will appear similar phenomena. Facing the above this kind of phenomenon, national urgently need a practical solutions, a function complete but operation simple meal ordering system. In view of the present network roscoe gateway website this limitation, we put forward and realized this network design roscoe system. In the development of design, adopts B/S (is clicked/Server) structure, this kind of structure allows data only result sets in the Browser display, data processing in Server, users need not install client, and because by the Server unified management data, easy to ensure the consistency of the data. Database, recommend industry of the leading relational database management system, the system sever2000 Microsoft SQL safety performance is higher. By adopting the JSP are currently popular web Server (Java) programming, more friendly user interface. In developing chose JSP + JavaBean + SQL2000 model, realized the application logic and page shows the separation, interface design more simple. JavaBean reusable software component meet, and meanwhile make small application programmer inputs, energy and reusable components, in simple applications to consider. Key Words: meal,online meal,NOMS(Order management system) 目录 摘要. I 1 引言 . (2) 1.1背景和意义 (2) 1.2开发设计思想 (2) 2开发技术简介 (3) 2.1JSP (3) 2.2T OMCAT (4) 2.3J AVA B EAN (5) 2.4SQL S ERVER (6) 3 系统需求分析 (7) 3.1性能需求分析 (7) 3.2软件质量需求分析 (7) 3.3系统可行性分析 (8) 3.5体系结构分析 (8) 4系统设计 (9) 4.1总体设计原则 (9) 4.2运行环境 (9) 4.3开发模式 (9) 4.4系统流程分析 (10) 4.4.1业务流程分析 (10) 4.4.2数据流程分析 (11) 4.5系统数据库设计 (12) 4.5.1系统数据库E-R图 (12) 4.5.2 系统数据库表设计 (13) 4.6系统功能结构设计 (15) 5 系统实现 (16) 5.1系统主要功能模块实现 (16) 5.1.1用户注册登录模块 (16) 5.1.2用户登陆模块 (17) 5.1.3客户订餐模块 (19) 5.1.4菜单管理模块 (21) 5.1.5订单管理模块 (22) 5.2连接数据库 (23) 5.3系统运行环境配置 (24) 5.3.1JDK配置 (24) 5.3.2T OMCAT配置 (25) 5.4 java汉字处理问题及解决 (25) 6 结束语 (27) 1 引言 1.1背景和意义 随着麦当劳,肯德基等洋味十足的快餐店越来越密集的出现在城市的大街小巷,越来越多的消费者光顾它们。然而一旦走进这些店铺,大多数人看到的都是铺天盖地排长龙的等待购买的人群、领餐后茫然寻找座位的人群以及因为人太多等不及购买而进去又徘徊出来的人。当然国内其他大型餐饮或者其他行业也都会出现类似的现象。 面对以上这种现象,国民迫切的需要一种实际的解决方法,一个功能完备但是操作简单的订餐点餐系统。 业内专家普遍认为,电子商务是一种个性化服务的生产方式,餐饮业长期以来就是个性化、多样化的生产服务。因此,有眼光的餐饮业经营者不应该总是停留在盲目的价格战、地域战阶段,而应在信息化和电子商务领域抢得先机。随着网络的普及,网上订餐业务在中国开始盛行,人们也通过网络订餐的方式获得自己需要的食物。这样既节省了时间,也可以为广大用户提供更多的口味。 1.2开发设计思想 该系统分为前台和后台两个部分,前台部分主要是用户进行资讯的浏览,以及订餐,订座管理等,主要是面向用户的。而后台主要是管理人员对前台数据的维护和设置,主要是面向管理人员的。网上订餐系统无论是在应用的深度还是广度都是一个逐步发展的过程。在开发一个局部系统时要充分考虑到局部系统和整个目标系统之间的相容性和完整性,以利于今后整个系统的建立。该系统从总体上把握系统的设计,在具体的设计实现上我们围绕着三个方面的需求展开,即管理者、系统使用者、系统维护者。 对于本系统的不同使用者,其功能与业务逻辑是不尽相同的。对于普通用户而言,系统主要像用户展示一个美观的界面,用户在可以浏览各类资讯,查询餐饮信息,订餐,订座等。而管理员则需要在后台维护这些数据。本系统的主要功能应是用户的订餐了,用户可以查询菜品信息,当发现自己满意的以 后,可以将这些菜品添加到自己的购物车,此时用户虽然选择了要预定的商品,但是还不具备法律效用,当用户通过一定方式(此方式不属编程范围)得到预定许可后,管理员在后台可以审核是否批准该用户的订餐请求,当管理员同意了该用户的订餐请求,即可将该用户所预定的发送给客户,此时客户在客户端可以看到自己购物车的状态,如果管理员没有批准或没有处理等,该客户都可以在前台看见相关信息。 该系统使用JSP(Java语言)和SQL Server2000数据库开发, 实现了网上订餐系统的动态管理,使得网上订餐的管理更加及时、高效,提高了工作效率。 该管理系统具有一般网上订餐系统的功能,从大的方面来讲主要包括资讯管理,餐饮管理,预定管理,用户管理等几个大的功能模块。 该系统是基于B/S(Browser/Server,浏览器/客户端)模式实现,基于MyEclipse平台架构开发设计,主要实现对网上订餐的使用、需求、以及用户订餐的动态管理等。随着Internet/Intranet技术的兴起,将原本在单机或本地局域网上运行的数据库系统移植到因特网中,即开发基于B/S模式的新一代MIS(Management Information System,管理信息系统)系统,正成为技术发展的趋势。为了保证系统性能的高效性、可扩展性,以及达到数据共享和网络化管理的目的,本系统采用B/S体系结构进行设计开发。 2开发技术简介 2.1JSP 随着互联网技术的不断发展,基于浏览器/服务器(Browser/Server 简称B/S)体系结构的应用程序得到了空前广泛的应用。但是服务器之间的通讯,尤其是在不同平台上运行的服务器之间的通讯仍然不是一件容易的事情。因为大多数Internet应用程序都是以数据库为中心的,方便的访问多种数据源的能力也比以往任何时候都更加重要。 JSP无疑可以轻松地实现这类功能,JSP技术是一种服务器端的HTML页面中嵌入JAVA代码的脚本语言,它比一般脚本语言的执行速度更快,由于JSP是基于JAVA语言的,所以它可以运行在UNIX/LINUX和WINDOWS平台上,是一种难得的动态网页开发语言。 在动态内容的解决问题中,还存在其他的解决方法,但是开发人员要掌握这些技术很难。例如,Java Servlets这样的技术就可以使得用Java语言编写交互式的应用程序的服务器端的代码变得更加简单。Java Servlets就是一个基于Java技术的运行在服务器端的程序(与Applet不同,后者运行在浏览器端)。开发人员编写出Servlet程序,用来接收来自Web浏览器的HTTP请求,动态地生成响应,然后发送包含HTML或XML文档到浏览器。 但是使用这种方法,整个网页必须都在Java Servlet中制作。如果开发人员或者Web管理人员想要调整页面的显示,就不得不从新编辑并编译Java Servlet程序。采用这种方法,编写带有动态内容的页面需要有很熟练的应用程序开发技巧和经验。很显然,一个简单的创建动态页面的解决方案要能解决以下的问题: 1. 能够在任何Web或应用程序服务器上运行 2. 将应用程序逻辑和页面显示分离 3. 能够快速地开发和测试 4. 简化开发基于Web的交互式应用程序的过程 JavaServer Pages (JSP)满足这些要求,它整合了存在的Java编程环境提供支持的技术和工具,产生了一种新的、开发基于Web应用程序的方法,这个方法给予使用基于组件应用的逻辑页面的设计者提供了强大的功能。 2.2Tomcat 大多数人(大概29)都喜欢将Apache Tomcat当作JSP应用服务器使用。有人可能会说,它之所以受欢迎是因为这个服务器是免费和开放源代码 的,但是真正的原因远不止这些。Apache Tomcat能够受欢迎,不仅是工作性能非常好,还有没有初始的开发成本开销等有力的竞争因素,但这不是决定因素。Tomcat 结构非常合理,更由于Tomcat 是Apache 组织的产品,这个组织有着雄厚的技术更新力量,并且Tomcat5.0 很好的支持了JSP2.0 规范,因此有着很好的发展前景。 Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta 项目中的一个核心项目,由Apache,Sun和其它一些公司以及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。Tomcat被JavaWorld杂志的编辑选为2022年度最具创新的java产品,可见其在业界内的地位。 Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:也处理Html页面,但是与Apache相比,它的处理静态Html的能力就不如 Apache。 2.3JavaBean JavaBeans被称为是Java组件技术的核心。JavaBeans的结构必须满足一定的命名约定。JavaBeans类似于Windows下的ActiveX控件:它们都能提供常用功能并且可以重复使用。JavaBeans可以在JSP程序中应用给我们带来了很大的方便,这使得开发人员可以把某些关键功能和核心算法提取出来,封装成为一个组件对象,增加了代码的重用率、系统的安全性。比如我们可以将访问数据库的功能、数据处理功能编写封装为JavaBeans组件,然后在某个JSP程序中加以调用。JavaBeans的与平台无关性,使得JavaBeans组件不但可以运行于Unix平台,还可以运行在Windows平台下面,而且JavaBeans从一个平台移植到另外的平台上代码不需要修改,甚至不需要重新编译。起码JavaBeans组件在使用以前不需要注册,本节将介绍在JSP程序中如何使用,JavaBeans组件要想在JSP程序中使用JavaBeans,组件必须应用等JSP的操作指令。 (1) 操作指令 操作指令用于在JSP页面中实例化一个JavaBean组件,这个实例化的JavaBean组件对象将可以在这个JSP程序的其它地方被调用。 操作指令的基本语法形式如下所示: 或者 body (2) JavaBeans的Scope属性: Application Scope Session Scope Request Scope Page Scope 2.4 SQL Server SQL Server 2000是一个分布式的关系型数据库管理系统,具有客户/服务器体系结构。Mircrosoft SQL Server 2000是一个应用广泛的数据库管理系统,具有许多显著特点,例如,用户喜欢的易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性能价格比等。 SQL Server 2000系统中,数据库的管理采取了先进的动态管理机制,数据库的大小可以随着数据量的变化而缩小或者扩大。另外,用户数据都是非常重要的和保密的,这些数据存储在Mircrosoft SQL Server 2000系统中有绝对的安全性保障,有完善的用户帐户策略和许可机制,只有经过授权的用户才能访问系统,并且执行相应的操作和访问允许访问的数据。未经授权的用户既不能执行相应的操作,也不能访问数据库中的相应数据。 SQL Server 2000系统具有强大的网上功能,可以在Internet上发布数据库中的数据。在Microsoft SQL Server 2000系统中,允许用户简单的使用一些向导和工具把数据库的数据发布到网络上,并且可以根据需要来调度修改已经发布的数据。 3 系统需求分析 网上订餐管理系统无论是在应用的深度还是广度都是一个逐步发展的过程。在开发一个局部系统时要充分考虑到局部系统和整个目标系统之间的相容性和完整性,以利于今后整个系统的建立。进货订单管理系统从总体上把握系统的设计,在具体的设计实现上我们围绕着三个方面的需求展开,即管理者、系统使用者、系统维护者。 3.1 性能需求分析 该系统在性能功能上应达到如下需求: 操作简单、界面友好: 完全控件式的页面布局,使得菜品,资讯,座位 等信息的录入工作更简便,许多选项包括餐厅信息,桌位,包房信息等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。对常见的类似网站的管理的各个方面:基本信息录入、浏览、删除、修改、搜索等方面都大体实现,顾客对菜品的预定及支付方式; 即时可见:对客户预定餐饮信息的处理(包括录入、删除)将立即在主 页的对应栏目显示出来,达到“即时发布、即时见效”的功能; 系统运行应该快速、稳定、高效和可靠; 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。 3.2软件质量需求分析 具体要求如表3-1: 表 3-1 软件质量需求分析 主要质量属性详细要求 正确性按照需求正确执行任务,完成各个模块的相应要求。 健壮性具有较高的容错能力和恢复能力。 可靠性故障发生率每运行1000小时低于3次 性能,效率软件的输出结果更新周期应该与系统的信息更新周期相同。在 网络情况良好的情况下,3秒内可响应用户请求。 易用性易理解性:软件研制过程中形成的所有文档语言简练、前后一 致、易于理解以及语句无歧义。 安全性防止软件受到意外或蓄意的存取、使用、修改、毁坏或泄密的 软件属性其数据应能集中存放于总部的数据库服务器,客户端 不保存任何业务数据和数据库连接信息,也不应进行什么数据