1、 校园B2C网上订餐系统设计与实现 网上订餐系统的需求分析与测试摘要:现在的社会是一个集数字化,网络化,信息化的社会。中国网民足不出户就可以在网络畅游。本次毕业设计的题目就是网络订餐系统。 本论文详细地阐述了整个网络订餐系统的功能及实现。实现了从菜品管理,菜品分类和查询,到购物车实现,用户订单处理,再到系统管理。能够基本实现网上订餐系统的实现和网上交易,方便用户网上订餐的需求。本系统界面简单直观,易于操作,交互性强,完全基于Internet网络和各种浏览器。关键词 :网络化;网络订餐系统;菜品管理 Abstract:Now the community is a set of digital,
2、network, information network as the core of the society. China citizen have enjoy remain within doors can swim in the network convenient. The present paper on graduation projects content, elaborated in detail the entire network reservation system function and the realization of. Has realized from th
3、e merchandise control, the classification of goods and the inquiry, realizes to the shopping cart, the user order processing, to the system management. Can realize online meal ordering system and online transactions, the convenient user online meal ordering requirements. This system simple and intui
4、tive interface, easy operation , interactive, based entirely on the Internet network and a variety of browser. Key words:Network;the network reservation system; food management 1 引言1.1目的和意义 生活在当今日快节奏的社会中,让人们对食物的要求也越来越高。不光是美味佳肴,而且在时间和吃的方式也有了更高的要求,因为现在的人工作很忙,几乎没有时间去享受美食,所以这种情况下,就会创建一个快捷的订货方式,用最快的方法把计算
5、机网络,餐饮和计算机网络结合起来,从而形成了网上预订系统,利用系统提供的关于美食餐饮企业的信息,我们会提供在线预订这种方式,不仅仅提高了服务的餐饮企业的质量,扩大知名度,也提供便捷的服务。网上预订请求形式,迅速形成社会餐饮的要求的网络。网上订票系统会为客户提供很大的便利。也有利于提高我们的管理和服务。可谓是一举多得。1.2 开发设计思想该系统是采用JSP语言编写的网络订餐系统,数据库是Oracle,通过后端业务逻辑的JavaBeans控制,即是JSP + JavaBeans+Oracle的三层模型设计。在这样的背景下,这种与计算机网络结合的订餐系统一定很重要。1.3 开发目标食物饮料行业是一个
6、快速发展的行业。随着时代的进步和网络技术的发展,再有多样化和方便性的软件开发平台的出现,使餐饮和多功能的电子商务服务相结合,将形成一个方便,快捷,个性化的在线预定系统,通过网上订购,客户不用亲临现场,食物将会主动找你。达到了方便客户的要求。2.1 JSP技术简介JSP 是一项新技术,从1998年开始出现的。由Sun提出,参与动态网页技术标准,是许多公司一起建立的一个基于Web的Java开发技术JavaServlet以及整个系统。 2.2 JSP工作原理JSP支持任何浏览器。在Web服务器和JSP引擎遇到一个请求来访问JSP页的情况下, JSP引擎将请求对象发送到服务器 ,然后加工这些引用,可能
7、会需要从数据库到检索信息,然后返回到JSP引擎。传递给JSP页面和JSP引擎响应对象,根据JSP页面将会完成数据的布局格式, JSP页面最后触发Web服务器和JSP引擎将返回HTML格式。这是当前Web浏览器被广泛应用于后台数据库。针对JSP操作在服务器上执行的所有方案中,网络客户端仅考虑所得结果。2.3 JSP体系结构JSP网站开发给出了两种经常使用JSP的技术,可以归纳为模式一、模式二。模式一:JSP+JavaBeans技术模式二:JSP+Servlet+JavaBeans技术2.4 JSP的特点2.4.1 简化的页面生成技术。JSP页面用HTML或XML来处理页面的格式和形式布局设计,类
8、似于HTML、XML的标记和用Java语言编写的脚本生成页面内容。2.4.2 和Java平台有机集成。Java 2平台的重要组成部分是JSP技术,JSP的脚本语言是Java语言。使用JSP技术可以创建扩展性的Web应用程序。2.4.3 硬件平台和服务器无关性。因为JSP是Java家族的一员,秉承了Java技术的“一次编写”,与硬件平台和服务器无关。2.4.5 功能可扩展性。和JSP技术可以通过ActiveX/COM组件来扩展这种功能一样,JSP也可以通过JavaBean和Enterprise JavaBean以及自定义的标记来扩展功能。2.5 Oracle 数据库Oracle数据库系统是美国O
9、racle公司提供的以分布式数据库为核心的数据库,是目前最受欢迎的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。2.6 系统数据库连接JDBC技术(Java DataBase Connectivity)是SUN公司提供的一种支持SQL功能的通用的应用程序接口(Application Programming Interface)。简单地说,JDBC能完成下列三件事:1. 建立同一个数据库连接;2. 连接数据库;3. 把数据库返回的结果进行处理。作为通用低层的应用程序编程接口,JDBC在不同的数据库功能模块中,有一个统一的用户界面。说JDBC是低级的API的原因,是SQL
10、命令被它直接调用,这种形式比其他的一些数据库连接API要方便容易点,但它有也可以作为更高级的API或开发工具基础。3 B2C网上订餐系统功能分析作为订餐系统分析,就是设计出这个系统的所有程序代码和数据库。说明数据、可执行语句等程序设计对象的集合就是模块,可以单独命名每个模块并通过这个名字来访问。模块化就是把这个程序相应化分成若干个模块,每个子模块完成一个功能,然后这些子模块集合起来组成一个整体,就可以完成程序的功能。3.1 系统功能分析此系统主要针对本订餐系统。主要订餐流程如下:a 顾客登录网上订餐系统进行食品菜单的浏览或者注册成为会员用户b 会员可以修改自己的个人信息,以会员形式登陆的用户才
11、能享受订餐服务c 会员筛选自己喜欢的食品d 当顾客确定订单后,顾客把菜品详情提交给系统,系统自动生成订单e 餐馆收到订餐信息后通过会员留下的地址送餐上门f 完成交易后,顾客可以再次登录订餐系统对食品评价,也可以进行留言,系统以此数据统计出受欢迎的菜品,在首页展示,方便顾客的需求3.1.1 从用户角度来看:在线注册成为网站的会员,可以获得浏览菜品,添加菜品,购买菜品,找回密码,修改密码,修改个人信息,给菜品留言等功能。3.1.2 从网站的角度看:(1)网站应该包含基本的搜索功能。(2)系统确认订单。(3)管理员管理:查看用户信息,并根据用户信息发派用户所定菜品。(4)进行菜品浏览,留言浏览和删除
12、。3.2 可行性研究可行性研究阶段是在对系统进行许多初步调查,对新系统是否具有实现价值等问题做出分析,避免在花费了大量的人力和物力之后,才发现系统不能实现或新系统投入使用后没有任何意义。对新系统进行可行性的分析,用最小的代价和资源测试新系统是否可行,以免后续不可行。 技术可行性分析为了保证网络订餐系统这种复杂的系统开发成功,必须采用工程化的系统开发方法,这些方法指导开发人员进行工程化的系统开发,从而系统开发的速度会提升,开发成本降低。 运行可行性分析: 在这个计算机知识的普及时代,越来越多的人掌握了计算机的基本使用方法,能够快速掌握订餐流程。对于新兴的网上订餐系统,用户也会选择尝试。 经济可行
13、性分析:随着电脑的普及,学生在网络上进行购物已是家常便饭。在很多学生不愿意出去吃饭情况下,网络订餐系统提供自动上门送餐业务,方便学生,商家也可以从中获得利润,两全其美。通过以上的分析,开发网络订餐系统是完全可行的。运行环境:运行本软件机器的硬件要求:a.服务器一台,配置如下:CPU内存硬盘Intel3以上512MB以上120GB 以上表3.2a 服务器配置表b.实现联机工作;运行本软件的软件要求:数据库应用服务器Jdk版本操作系统IE浏览器mysqlapache应用服务器软件jdk1.4windows 76.0以上表3.2b 软件要求表3.3 需求分析需求分析是充分了解系统的工作情况,明确用户
14、的各种需求,然后在此基础上修改确定新系统的功能。所以需求分析在不断完善,因为要时刻调查客户新需求。一般分为功能需求和性能需求。34 系统总体结构图:网络订餐系统找回密码管理员公告留言板修改个人信息修改个人密码菜品查询 用户注册用户登录菜品浏览图3.4 系统总体结构图3.4.1 会员端管理系统客户端管理系统网上订餐会员专区客户留言最新动态关于我们菜品添加菜品删除菜品修改会员登录会员注册找回密码修改个人资料图3.4-1 会员端管理系统图3.4.2 店主端管理系统店主端管理系统管理菜品管理订单管理最新动态管理用户留言图3.4-2 店主端管理系统图3.5 系统用例图3.5.1 会员用例图图3.5-1
15、会员用例图3.5.2 店主用例图图3.5-2 店主用例图3.6 数据流图:数据流图:是一种描述软件系统逻辑模型的图形符号。分层数据流图:用户注册信息用户登陆信息网络订餐系统 系 统菜品浏览信息用户信息修改信息用户订单修改信息(a) 网络便民服务管理系统E-R图订单处理用户信息处理检查合法性查询处理不合法处理留言处理 (b)检查网络便民服务管理系统E-R图录入处理用户基本信息文件用户信息处理修改信息 修改密码 (c)用户基本信息处理E-R图 订单信息文件添加处理订单处理修改处理删除处理(d)用户订单处理E-R图商品总览查询处理具体商品查询(f)菜品查询处理E-R图管理员信息文件删除定购商品信息添
16、加商品管理员登陆删除商品删用户(h)管理员ER图3.7 数据字典: 字典的作用是对词汇定义和解释。换句话说,数据字典其实就是数据流图上所有成分的定义和解释的文字集合。数据字典对数据流图和各种成分起解释说明作用。4 B2C网上订餐系统总体设计4.1 系统功能设计目标理论系统功能设计目标如下:(1) 实用性强:使系统试用性强,方式简便合理,尽量减少用户的输入,友好方便的用户界面,满足各层次的用户使用需求; (2) 合理的程序结构:简洁明了的程序结构,更加易于系统维护与管理;(3) 安全可靠性高:后台维护功能齐全,管理人员实现系统的维护,使系统安全、可靠;(4) 模块化设计的方法:把系统分为几个模块
17、,便于后面的分析、维护;(5) 系统操作简单,维护方便:每个子系具有相对相应的功能,也可以对系统维护。(6) 查询功能强大:可以查询菜品的详情、用户基本情况,留言板信息,用户评价,使管理人员能及时准确地掌握菜品受欢迎情况和留言,便于改进增加销量。4.2 网络订餐系统模块的划分:根据需求分析与系统功能设计目标,结合实际情况,把本系统功能模块分为如下:1 主页:进入系统在主页里可以看见菜品的主要信息。2 用户注册:用户注册成为会员,填写订餐有地址,方便订餐。3 用户登陆:为了方便用户的购买付款,需要注册变成会员后才可以进行订单。4 菜品浏览:成功登陆后的会员可以进行菜品查看,并将想要的菜品加入购物
18、车,提交到订单页面。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登录页面”。.5 选购菜品:成功登陆的会员可以在该页面选购所需要的菜品。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。6 查看订单:成功登陆的会员可以在本页查看已经订购的菜品。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。7 修改或删除订单:成功登陆的会员可以在该页修改或删除已经订购的菜品。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。8 菜品查询:成功登陆的会员可以在该页查询自己需要的菜品
19、。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。9 修改密码:成功登陆的会员可以在该页修改自己的密码。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。10 修改个人信息:成功登陆的会员可以在该页修改自己的个人信息。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“用户登陆页面”。11 商城公告:发布各种新菜品信息或者新闻。12 管理员:查看用户订单,查看用户信息,修改菜品信息,并根据用户信息和用户订单对菜品进行派送。4.3 体系结构:三层结构:数 据 库逻辑处理视 图即:JSP + JavaBeans
20、+ Oracle 数据库5 数据库设计5.1 数据库系统概述:和其他的大型数据库相比,Oracle具有安全性,存储速度快,兼容性高,简单易用的特点,应用Oracle作为后台数据库为系统的开发提供了强有力的支持,并对以后软件的运行打下了坚实的基础,所以我们采用了Oracle作为后台数据库。5.2数据库表设计:逻辑结构设计用户信息表(user)字段名数据类型长度说明描述Useridint8Not null,主键自增,用户idUsernameString20Not null用户名PasswordString20Not null用户密码EmailString20Not null用于找回密码的邮件Typ
21、eInt2Not null,0:表示店主;1:表示会员,默认为1用户的类型图5.2 用户信息表食物信息表(food)字段名数据类型长度说明描述FoodidInt8Not null,主键自增,食物idFoodnameString20Not null食物名称PriceDouble6Not null食物的价格FoodnumberInt6可为空食物的数量FoodtypeString20可为空食物的类型StatusInt2Not null,0:表示卖光了;1:表示不能出售;2:表示正在出售。默认为2食物的状态图5.2 实物信息表客户信息表(customer)字段名数据类型长度说明描述Customerid
22、Int8Not null,主键自增,客户的idUseridInt8Not null,外键用户的idCustomernameString20Not null客户的姓名TelphoneString20Not null客户的联系电话LandlineString20可为空客户的座机RemarkString225可为空备注图5.2 客户信息表订单信息表(order)字段名数据类型长度说明描述OrderidInt8Not null,主键自增,订单的idCustomeridInt8Not null,外键客户的idFoodidInt8Not null,外键食物的idOrdernumberString20Not
23、 null订单号FoodnumbersInt2Not null份数DelivertimeString10Not null有下拉列表选择送餐的时间AddressString40Not null送餐的地址Ordertimelong 默认长度Not null订餐的时间StatusInt2Not null,0:表示未送;1:表示已送。默认为0订单状态图5.2 订单信息表留言信息表(message)字段名数据类型长度说明描述MessageidInt8Not null,主键留言idUseridInt8Not null,外键用户idPublishtimelong默认长度Not null发表时间Content
24、String225Not null发表的内容ResponsemessageidInt8可为空回复的留言id图5.2 留言信息表6 详细设计6.1 程序说明6.1.1 编写目的 该文档注重B2C网上订餐系统项目界面编写,详细描述编写目的,编写流程和截图。本文档的预期读者是:开发人员,项目管理人员,测试人员6.1.2 背景本软件名称为校园B2C网上订餐系统,B2C是Business-to-Customer的缩写,而其中文简称为“商对客”。随着现在网上购物的流行,这种不用出门就可以买到想吃的食品是具有意义的。6.2 具体模块划分6.2.1 主页面模块,显示菜品信息6.2.2 用户注册模块 用户注册是
25、为第一次登录网站的用户所设计的。在用户成为本站用户之前一定要注册才可以访问除主页网站的其它网页内容。用户注册包括:登录名称,真实姓名,设置密码,电话,身份和送货地址等。注册成功后,才可以访问本站的其他页面。6.2.3 用户登录模块 用户登录包括:登录名称,输入密码。当用户登录后由管理员核对该用户的名称和密码是否正确,如果无误的话用户可以通过检查直接进入网站的其它页面进行浏览和购买查看等。6.2.4 菜品浏览模块 菜品浏览:成功登陆后的用户可以分页浏览菜品菜品,并将想要的菜品加入购物车,转到填写订单页面。6.2.5 购物车模块,显示添加菜品信息6.2.6 收货人详情页面,包括收货人地址,邮编,电
26、话等7 软件安装与测试7.1 软件的安装与配置(1)软件安装:操作系统Windows7和数据库Oracle JDK安装:JDK安装简单,和安装其他的软件一样。 JDK的配置:设置JAVA_HOME环境变量:JDK 安装目录 例:C:j2sdk1.4;设置CLASSPATH环境变量:JDK安装目录libtools.jar 例:C:j2sdk1.4libtools.jar;.设置PATH环境变量:JDK 安装目录bin;例:C:j2sdk1.4bin;服务器的安装:Tomcat 5.0设置TOMCAT_HOME环境变量:Tomcat安装目录 例:C:Tomcat 5.0;(2)安装Tomcat5.
27、0 安装时注意在选择Java虚拟机路径是一定要选择安装的JSDK的目录,然后再开始安装。(3)安装完毕后,启动TOMCAT,然后再浏览器中输入http:/localhost:8080时可以看见TOMCAT的欢迎页面,这样表示配置成功了。7.2 软件调试软件调试的目的是查看软件是否能够正常使用,避免给管理员和客户带来的不便。在网络订餐系统中用的调试方法为程序调试:包括语法调试和逻辑检查。测试数据除采用正常数据外,还需要用一些异常数据,这样才能全面检查程序是否正确。7.3 软件测试软件的测试是系统开发周期后期中一个十分重要的环节,其重要性体现在它是保证系统质量与可靠性的最后关口,是对整个系统开发过
28、程的最终审查,如果错误不能在测试阶段被发现并纠正,就可能会造成不堪设想的后果。在网上购物电子商务平台中,我们以黑盒测试为主,白盒测试为辅。对关键模块采用白盒测试。但是因为我们这个系统较容易,所以只进行了黑盒测试。7.4 测试特性7.4.1 功能性系统实现的主要功能,包括查询菜单,添加菜单,修改菜单,删除菜单。系统实现的次要功能,包括为用户分用户留言和评价和注册会员需求规定的输入输出字段,以及需求规定的输入字数限制7.4.2 易用性 操作按钮提示信息正确性,一致性,可理解性 限制条件提示信息正确性,一致性,可理解性必填项标识输入方式可理解性中文界面下数据语言与界面语言的一致性页面友好性7. 5
29、测试内容7.5.1 用户注册 用户可填写自己的基本信息,包括电话、电子邮箱、账户名、地址、密码和确认密码、验证码等。7.5.2 会员登录 会员输入正确的验证码、用户名和密码后登录,如发生错误,会出现提示错误信息页面。7.5.3个人信息修改 会员可以按要求修改个人基本信息,如果是非会员或者未登录的会员,系统提示其进行登 录操作。7.5.4 个人订单 会员发布订单后,可以在订单页面中看到自己订单状态,也可以进行修改。7.5.5 筛选菜肴 客户、会员和餐厅本身都可以进行菜肴选择,但只有管理员才能修改增加菜品。8 结束语经过六个月多月的不懈努力,在指导老师的教导以及同组同学的团结协作下,充分利用大学四
30、年所学的计算机专业知识,通过大量阅读查阅与设计相关的专业参考文献,我和同学们终于完成了本次毕业设计,已经基本上实现了网络订餐系统的各项功能。在这次毕业设计过程中,我独立设计了需求分析,对软件进行测试,详细设计,简单的页面设计,代码编写等,也做了制作PPT工作和一个小组的核心信息交流作用。本系统的缺陷也是明显的,如安全性,效率问题等问题。由于时间,能力等客观原因,对于订餐系统有些功能实现并不完善,在已经完成的程序中,也存在少量不完满的算法,系统有待进一步改良,而这些问题使我充分认识到了软件开发的困难,让我知道要努力学习更多知识。在此我非常感谢各位老师、同学的支持和教导。9 附录9.1 致谢 在本
31、次毕业设计过程中,很多不会的问题请教了指导老师,老师们都仔细给我解答。在指导老师的指导下,在需求分析、系统功能上我都有很大的进步,并对我细节上给予我耐心的指导,使我顺利完成这次毕业设计。我还要感谢我的母校重庆师范大学,以及在大学四年生活中给予我关心和帮助的老师和同学们,是他们教会了我专业的知识和与人相处的道理。通过这次毕业设计我还明白了作为一名计算机专业的大学毕业生,我们要会的不仅仅是编写代码,更重要的是要有整体把握系统设计的能力和不断探求的精神。参考文献1 孙卫琴,李洪成.Tomcat 与 Java Web 开发技术详解.电子工业出版社,2003年6月:1-2052 BruceEckel.J
32、ava编程思想. 机械工业出版社,2003年10月:1-3783 FLANAGAN.Java技术手册. 中国电力出版社,2002年6月:1-4654 孙一林,彭波.Java数据库编程实例. 清华大学出版社,2002年8月:30-2105 LEE ANNE PHILLIPS.巧学活用HTML4.电子工业出版社,2004年8月:1-3196 飞思科技产品研发中心.JSP应用开发详解.电子工业出版社,2003年9月:32-3007 耿祥义,张跃平.JSP实用教程. 清华大学出版社,2003年5月1日:1-3548 孙涌.现代软件工程.北京希望电子出版社,2003年8月:1-246 9 萨师煊,王珊.数据库系统概论.高等教育出版社,2002年2月:3460 10 清宏计算机工作室.JSP编程技巧. 机械工业出版社, 2004年5月:1-410 11 朱红,司光亚.JSP Web编程指南.电子工业出版社, 2001年9月:34-307 第 25 页 (共 25 页)
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100