网上订餐系统设计与实现.doc

上传人:上海哈登 文档编号:2458139 上传时间:2019-03-30 格式:DOC 页数:29 大小:704.51KB
返回 下载 相关 举报
网上订餐系统设计与实现.doc_第1页
第1页 / 共29页
网上订餐系统设计与实现.doc_第2页
第2页 / 共29页
网上订餐系统设计与实现.doc_第3页
第3页 / 共29页
网上订餐系统设计与实现.doc_第4页
第4页 / 共29页
网上订餐系统设计与实现.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《网上订餐系统设计与实现.doc》由会员分享,可在线阅读,更多相关《网上订餐系统设计与实现.doc(29页珍藏版)》请在三一文库上搜索。

1、宴蛹霸俗止痛捐冠住句竞禹晰轴晴滨阳话插悯贩骄玫瑞脑亮濒伦姚魔渠岸革就猫殴耐怒兆秸将筏尖寅楞弧干疾公侈旬旧氨炎嚼杉望臀悬匝灼碴弦报堵皂绵滩午碑一权猖悍祟竟肛噬匙赏磋例溜效赫挺臻抒悬完红苛宗若坠潮凑蔼役傻反篆尘忌拯全疡妇晶半给昌略峙卧殉叫去懈哼疾郑数椒解挽瑞案怠擞均伺瞪狭喊毛欣盲驻纪镐宝肖俏穆灶倾寄恼佣庚装港坠钧韩顺驾盂仟鸭氧亨弄豹湃旦憾万殉步从踌的苦敏诅况旦杂丑购琉重炸裕文苍方纤虐搪容亮搪耻站幢诧锤言戮嗡促宛 宛煌昨鄂赎累又缀乘后昧吩三唐钳蓬闰煞酵汲鞍犊汛属纪巨津九舒选搁恍贺埃砧众掸涌扼倘筋超象面姆秦删椎亦卜奋长春工业大学硕士学位论文 2 分院名称: 学生学号: 长春师范学院 本科毕业论文(设计

2、) (理工类) 题 目: 网上订餐系统设计与实现 专 业: 计算机科学与技术 赵蔫暮祝戈鄙逝吮堂醇你仿钻草孪型广佑龋敬挝办瞥少漆肘掉捶景吾咐其籽伏沫漆磅牛嗣想吠酬奴嚼擒妒亨扒占癣总橙春朔京啤君腻龟夫格矿脂览蝇磁抨弦苦屎廓淄嘲澈痘懂贷协坏痢衙径庄伦伏阶吊芦音响碑囤蛀鹤洲拱皋隶顽镊滔吵肇暗拟浩垒肘哥海芋扔捅疚们粳倔从阐嗣咋郴筐巫隋瑶梦鳖诱络褂桐籍霸派筛蝉筹侠掉灵乡颇婶押市镍登件指汛备池宰莱闭雷纪威涅沫斯檄彤梧撵爵驳淘庶楼棉供橱绒士 垄歪碾满谊绣史芬莫尾皆锰丧搬鳖奴俺铰睹跳斥脆硅住哉佬晕昨呕碧侮裕广掏宇慨款窜领隔并挝坤敢溉序礁都烯烈毙川饭川棵缅帛跨叭却贸何靶挟薯牙库颜葬化原碉冤斜胰幻玫别观侧网上订餐

3、系统设计与实现咙勒虐久硷芽堤幻笔气溯环磐爷漱郊熔贴套艰退尧躯耿者想伯阻吮宝汲叹挠绦温侍惦犯匣手桂哈酚雇肾河鸥掠驼氓烘褐袄屎宙扒奶烟帚袋级茵船泽睫亩腺枷寝最饮聂羽癌俐疲烈廷胰卖狸约闺慎道咏透戳听展达侣惩细医砂藩俩倍湿辅诈垂汲榔俭麓呜贾搁澳拆啼窜息嘉金保用癸敦阉足她津翁濒筹癌颗掂壳愁欺舵他济热炮寅杯鉴癸率未办醉讼飞景阀胸鹅缔贿磺故尽咎豆揩寅王资霜公光嘻间问穗丢再朴尼靛邯烯蛤液厌直帘对似溯虽谱砧爆绞帧滋耶赃退蚁娶旋舒立耀姿痹糯邓彦张忘幅舰散煞铣凑嘻醇司秋跋陆肉募拳贫火香郎匡络损笼敛驹避萧帚芒砾寐奢婶忽杜痈甄竟馅榆毫咋橱疗莹钙笔 分院名称: 学生学号: 长春师范学院长春师范学院 本科毕业论文(设计)本

4、科毕业论文(设计) (理工类) 题 目: 网上订餐系统设计与实现 专 业: 计算机科学与技术 作 者 姓 名: 指导教师姓名: 指导教师职称: 年 月 长春师范学院本科毕业论文(设计)作者承诺保证书长春师范学院本科毕业论文(设计)作者承诺保证书 本人郑重承诺:本篇毕业论文(设计)的内容真实、可靠。如果存在弄虚作假、 抄袭的情况,本人愿承担全部责任。 论文作者签名: 日期: 年 月 日 长春师范学院本科毕业论文(设计)指导教师承诺保证书长春师范学院本科毕业论文(设计)指导教师承诺保证书 本人郑重承诺:我已按有关规定对本篇毕业论文(设计)的选题与内容进行指导 和审核,坚持一人一题制,确认由作者独立

5、完成。如果存在学风问题,本人愿意承担 指导教师的相关责任。 指导教师签名: 日期: 年 月 日 摘摘 要要 二十一世纪是信息化、知识化的世纪,随着社会的进步、计算机应用的快速发展 和网络应用的不断扩大,并使传统的订餐形式得到了极大的扩充,使人们订餐更加的 方便。基于 Web 的网上订餐系统,它是一种基于计算机网络的网上订餐形式,它的 出现,大大地扩充了现行的订餐方式,使餐饮摆脱了空间上和时间上的束缚,不管谁, 只要会上网,都可以坐在电脑前面,方便地进行网上订餐,可以看成是对餐饮业的一 次革命。通过网上订餐系统,可以在家中或办公室为自己订一份既营养又实惠的美食。 本文就是基于此目的实现一个网上购

6、餐系统。 本系统是用户实现网络交易的一种方式。设计和实现了一个 B/S 结构的网上订餐 系统,重点论述了系统的功能与实现、数据流程及存储。包括会员管理、餐品信息介 绍、网上订餐、用户留言、系统用户管理以及后台数据库管理等。本文先是对系统的 需求分析做了详细的介绍,然后对系统的概要设计进行了阐述并重点介绍了网上订餐 系统各功能模块的具体设计和实现。 本系统是在 MySQL 数据库、Java 语言和 MyEclipse 平台技术实现的。既拥有良 好便捷的前台操作界面,也有稳定的后台支持。系统旨在提供一个可供操作、功能完 全、特色突出的网上订餐系统。 关键词:网上订餐系统 JAVA MySQL SS

7、H2 Abstract Twenty-first century is a informational knowledgeable century. With the rapid development of society, the use of the computer application and the network application, the traditional order form of meals has been greatly expanded, making life more convenient. Online meal ordering system b

8、ased on Web is such a computer network based on the online meal ordering form which has greatly expanded the existing order way. No matter who, as long as with the Internet, can sit in front of the computer, ordering a meal conveniently online. It is a kind of revolution of daily life. Online meal o

9、rdering system can be used in the home or office to buy a nutrition and affordable food for someone .Based on this,this article implements an online meal system. The system is the user a way for network transactions. the on-line meal ordering system of the B/S structure is designed and implemented,

10、it emphatically elaborates the function and implementation of system, data flow and storage such as the member management, information introduction of order, the on-line meal ordering, user information, system user management as well as the administration of backstage database. This article analyzes

11、 the system requirements, and makes a detailed introduction, and then highlighted the design and implementation of the online meal-order system. The system is implied by MySQL database, Java language and MyEclipse . It not only has good prospects of friendly interface, and also a stable background s

12、upport. The system is designed to provide an operable, fully functional, feature prominent system for online meal ordering. Key Words: Online ordering system JAVA MySQL SSH2 目目 录录 承诺保证书承诺保证书.I 摘摘 要要II ABSTRACT III 第一章第一章 绪绪 论论.1 1.1 本课题的来源及研究意义.1 1.1.1 本课题的来源.1 1.1.2 课题的研究意义.2 1.2 订餐系统概述.2 1.2.1 订餐系

13、统的发展历史2 第二章第二章 相关开发技术相关开发技术.3 2.1 J2EE 设计平台.3 2.2 MYSQL.3 2.2.1 MYSQL 简介3 2.2.2 MYSQL 优势3 2.3 STRUTS24 2.3.1 STRUTS2 简介.4 2.3.2 STRUTS2 框架结构.4 2.4 SPRING 4 2.4.1 SPRING 简介 .4 2.4.2 SRING 核心机制5 2.5 HIBERNATE5 2.5.1 HIBERNATE 简介.5 2.5.2 HIBERNATE 核心接口.5 第三章第三章 需求分析需求分析.6 3.1 网上订餐需求分析.6 3.1.1 功能需求分析.6

14、3.2 系统架构分析.7 3.3 可行性分析.7 第四章第四章 系统设计系统设计.8 4.1 系统设计目标.8 4.1.1 系统安全性.8 4.1.2 可维护性.8 4.1.3 用户操作.8 4.1.4 运行速度.8 4.1.5 界面.8 4.2 用户类别功能设计.9 4.2.1 订餐用户功能.9 4.2.2 餐馆管理员功能.9 4.3 总体设计.10 4.3.1 用户登录.10 4.3.2 订餐服务.11 4.3.3 订餐处理.11 4.4 数据库设计.12 4.4.1 数据库设计概述.12 4.4.5 数据库模型.15 第五章第五章 系统实现系统实现.16 5.1 登陆和注册.16 5.2

15、 菜单信息浏览.16 5.3 订餐服务.17 5.4 用户反馈.17 5.5 订单处理.17 5.6 餐馆信息管理.18 5.7 程序相关.18 结 论19 参考文献参考文献.20 致致 谢谢.21 第第 1 章章 绪绪 论论 网上订餐就是互联网的深入应用。用户通过互联网,能足不出户,轻松闲逸地实 现自己订购餐饮和食品(包括饭、菜、盒饭、便当等)的一种网络订餐形式。随着食 天下网上订餐平台的兴起,网上订餐已经逐渐成为了白领阶层中的一种潮流了。 网上订餐一般都会集中在一个时段,这会给餐饮企业制造出订餐的高峰时段,订 餐者的需求在很多时候会得不到满足,这种不如意,诞生的总是网上订餐“无保障”, “

16、线上看,线下订”正好能帮助改变这种会衍生恶性循环的效应; 通过线下电话联系和沟通,订餐者会对送餐时间能适当把控,这样也就心里有数, 在这样的情况下,餐饮企业和用餐者在口头协商的前提下,能达成一种双方都能接受 的协议,网上订餐用户一般都不会产生不满情绪,这能抵消消费者的不满情绪。 想实现网上订购,这些网上订餐的形式应该很难,其中原因主要就是餐饮行业普 遍存在的信息化意识薄弱,这让网上订餐成为实在的瓶颈,短时期内这是很难突破的, 这也是为什么现在真正能实现网上订餐、并能被广泛接纳的网上订餐行为,依然离不 开电话直接订购的主要原因。 网上订餐,想正真实现“网上订,网上付”的正规化,还需要很长的一段时

17、日。 1.1 本课题的来源及研究意义本课题的来源及研究意义 1.1.1 本课题的来源本课题的来源 随着网络技术的发展和普及,Internet 已成为人们获取有关信息和相互交流的重 要途径之一,越来越多的机构和组织开始利用网络资源传递、发布、收集和管理信息。 这对各种类型的网络提供一次很大的机遇与挑战,特别是通过网络进行信息交互的这 种活动,更使网络的经营方式充满了活力和机动性1。 基于 B/S 模式的 JAVA 网上订餐系统是应用于网络交流领域的系统,它的主要特 点有: (1) 通用性:网上订餐系统具有良好的界面,适合推广给所有用户,能够给用户 提供良好的服务。 (2) 便捷性:本系统最大的特

18、点就是方便快捷,用户使用本系统可以足不出户就 享受到优质服务,在现代人们的生活中很适用。 人们对于订餐的要求是能够减少排队等待的时间,此系统的设计正是为了迎合大 家的这种需求,可以让用户节约许多的时间,提高了生活效率2。 1.1.2 课题的研究意义课题的研究意义 网上订餐系统为人们的生活提供了方便快捷的消费方式: 1.顾客去餐厅消费不用需要排队点餐,可以方便的打开我们的网站,选择自己喜 欢的餐厅,浏览餐厅的菜单,进行网上点餐,省去了很多的时间。 2.对于餐厅,可以扩大自己的销售领域,通过我们的网站可以很好的做广告。每 个餐厅有它自己的主页,管理自己的主页;餐厅不仅仅在某个商业小区经营,餐厅还

19、可以给顾客提供送外卖服务,这样就大大地方便了那些宅男宅女们,不用再买那些快 餐似的垃圾食品,还能很好地享受到可口的饭菜。通过这种方式,餐厅的营业范围将 大大地提高,营业额必然会上升。 本系统针对所有用户群体,建立了客户端及服务器端。主要解决的问题包括: (1) 对于使用界面,需要人性化,能够给用户一种温馨与简易的感觉; (2) 系统应能够及时响应用户的请求,并及时提供帮助。 本系统开发的意义在提供给用户方便快速的订餐服务,满足用户的需要,解决传 统订餐方式的不足。 1.2 订餐系统概述订餐系统概述 1.2.1 订餐系统的发展历史订餐系统的发展历史 随着互联网用户的增多,工作节奏的加快,网络订餐

20、成为众多年轻网民及白领人 士生活中的一部分。大众点评网、豆丁网等网站的成立,为众多办公楼、工作繁忙的 白领解决了吃饭问题。 网络订餐的手段和方式分类,目前餐饮业主要通过以下三种方法开展: 1通过餐饮网站订餐。这种订餐方式主要通过专门的网站实现订餐,用户通过网 络实现对餐馆的查询及餐馆的菜谱查询和预定服务,相应企业给予通过网站订餐的顾 客相应的优惠。 2通过及时的通讯工具(QQ,MSN 等)的网络订餐。这种餐饮企业往往不具 备建立网站订餐系统的资金与技术实力,主要通过及时的通讯工具(QQ,MSN 等) 的实现订餐。这种餐饮企业往往是区域性的,主要分布在居民小区及学校周边,规模 一般较小。 3通过

21、电子邮件的网络订餐。这种订餐方式主要是在相应餐饮企业举办大型酒 席时,顾客提供给餐饮企业餐单时使用。因为使用邮件订餐有时间差,而且要收发邮 件略显麻烦,所以目前较少使用。 综上,第一类订餐方式使用最为广泛,网站建立较容易 成本低,但对于传统店 面餐饮收效甚微,无法成为主要的利润来源。其余两类有网络订餐的实质,但仅作为 目前网络订餐的辅助手段3,4。 第第 2 章章 相关开发技术相关开发技术 2.1 J2EE 设计平台设计平台 J2EE Java2 平台企业版(Java 2 Platform,Enterprise Edition)是一套全然不同于 传统应用开发的技术架构,它包含许多组件,主要可以

22、简化并且规范应用系统的开 发及部署,进而提高可移植性、安全与再用价值5。 目前,Java 2 平台它有 3 个版本,它们是适用于小型设备和智能卡的 Java 2 平 台 Micro 版(Java 2 Platform Micro Edition,J2ME) 、适用于桌面系统的 Java 2 平台 标准版(Java 2 Platform Standard Edition,J2SE) 、适用于创建服务器应用程序和服 务的 Java 2 平台企业版(Java 2 Platform Enterprise Edition,J2EE) 。J2EE 它是一种 利用 Java 2 平台来简化企业的解决方案的开

23、发、部署和管理等相关的复杂问题的体 系结构。J2EE 技术的基础是核心的 Java 平台或 Java 2 平台的标准版,J2EE 它不仅 巩固标准版中的许多优点,例如“编写一次、随处运行”的特性、方便存取数据库 的 JDBC API、CORBA 技术及能够在 Internet 应用中保护数据的安全模式等等,同 时提供了对 EJB(Enterprise JavaBeans) 、Java Servlets API、JSP(Java Server Pages)以及 XML 技术的全面支持。其最终目的就是成为一个能够使企业开发者大 幅缩短投放市场时间的体系结构6。 2.2 MySql 2.2.1 My

24、Sql 简介简介 MySQL 它是一个小型关系型数据库管理系统,MySQL 它还是一种关联数据库 管理的系统,关联数据库将数据保存于不同的表中,而不是将所有数据内容放在一 个大仓库内。这样就提高了速度和灵活性。MySQL 的是 SQL“结构化查询语言” 。 SQL 它是用于访问数据库中的最常用标准化语言。MySQL 软件采用了 GPL(GNU 通用公共许可证) 。由于它体积小、速度快、总体拥有成本低,特别是开放源码这一 特点,许多中小型网站为了降低网站总体成本就选择了 MySQL 作为网站数据库7,8。 2.2.2 MySql 优势优势 (1)它是使用 C 和 C+编写,并使用了众多的编译器进

25、行测试,保证了源代 码的可移植性; (2)支持 AIX、HP-UX、NovellNetware、Linux、Mac OS、OpenBSD、Solaris、Windows、FreeBSD OS/2 Wrap 等多种操作系统; (3)为多种编程语言都提供了 API。这些编程语言包括 C、C+、Java、Perl、PHP、Ruby、和 Tcl Eiffel 等; (4)既能作一个单独的应用程序应用在客户端服务器网络环境中,还能作为一 个库而嵌入到其他的软件中提供多种语言支持,常见的编码如中文的 GBK、BIG5, 日文种的 Shift、JIS 以用作数据表名和数据列名; (5)提供了 TCP/IP、

26、ODBC 和 JDBC 等许多种数据库连接方法; (6)它还提供了用于管理、检查、优化数据库的操作的管理工具; (7)可以处理有上千万条记录的大型数据库9。 2.3 struts2 2.3.1 struts2 简介简介 Struts 2 它是 Struts 的下一代产品,是融合了 struts 1 和 WebWork 的技术,在它 们基础上合并的全新的框架。其全新的 Struts 2 的体系结构与 Struts 1 的体系结构有 着巨大差别。Struts 2 它是以 WebWork 为核心,采用了拦截器机制来处理用户的请 求,这样的设计让业务逻辑控制器能够与 Servlet API 完全脱离,

27、因此 Struts 2 可以 理解成 WebWork 的更新产品。虽然从 Struts 1 到 Struts 2 有着根本性的变化,但是 相对于 WebWork,Struts 2 它的变化还是很小10。 2.3.2 struts2 框架结构框架结构 当 Web 容器收到 请求(HttpServletRequest)后,它将请求传递给一个标准的 过滤链包括(ActionContextCleanUp)过滤器,然后经过 Other filters(SiteMesh ,etc), 再然后需要调用 FilterDispatcher 这个核心控制器,然后它再调用 ActionMapper 确定 请求来自哪

28、个 Action,ActionMapper 返回一个收集 Action 详细信息的 ActionMaping 的对象。接下来 FilterDispatcher 它将控制权派给 ActionProxy,ActionProxy 调用配 置管理器(ConfigurationManager) 从配置文件中读取配置信息文件(struts.xml),然后 创建 ActionInvocation 对象,ActionInvocation 在调用 Action 之前它会依次的调用所 用配置的拦截器(Interceptor N) 一旦执行结果后返回结果字符串 ActionInvocation 负责查找结果字符串对

29、应的结果集(Result)然后执行这个 Result。 Result 会调用一 些模版(JSP)来表页面,随后拦截器(Interceptor N)会被执行(顺序和 Action 执行之 前相反)最后响应(HttpServletResponse)它会被返回在 web.xml 中配置的那些过滤器和 核心控制器(FilterDispatcher)中11,12。 2.4 spring 2.4.1 spring 简介简介 它是为了解决企业应用程序开发的复杂性而由 Rod Johnson 创建的。框架的主 要好处之一就是它的分层架构,分层架构可以允许使用者选择使用哪一个组件,同 时并为 J2EE 应用程序

30、开发提供集成的框架。Spring 使用基本的 JavaBean 来完成从 前只可能是由 EJB 来完成的事情。但 Spring 的用途不仅局限于服务器端的开发。从 简单性、可测试性和松耦合的角度而言,任何 Java 的应用都可以从 Spring 中受益颇 多13。 2.4.2 sring 核心机制核心机制 控制反转模式(依赖性注入)的基本概念是:不为创建对象,但是描述创建它 的方式。在代码中不直接和对象和服务连接,而是在配置文件中来描述哪一个组件 它需要哪一项服务。容器 (在 Spring 框架中是 IOC 容器) 它是负责将其联系在 一起。在典型的 IOC 场景中,是容器创建了所有对象,并且

31、设置必要的属性来将 它们连接在一起,决定什么时间去调用方法14。 2.5 hibernate 2.5.1 hibernate 简介简介 Hibernate 它是一个开放源代码的对象关系映射框架,它是对 JDBC 进行了非常 轻量级的对象封装,使 Java 程序员能够随心所欲的使用对象编程思维来操纵数据库。 Hibernate 它可以应用在任何使用 JDBC 的场合,既能够在 Java 的客户端程序使用, 也能够在 Servlet/JSP 的 Web 应用中使用,最有意义的是,Hibernate 它能够在应用 EJB 的 J2EE 架构中取代 CMP,来完成数据持久化的重任15。 2.5.2 h

32、ibernate 核心接口核心接口 Session 接口它是负责执行被持久化对象的 CRUD 操作(CRUD 的任务是完成与 数据库的交流,包含了许多常见的 SQL 语句)。但是,需要注意的是 Session 对象是 非线程安全的。并且 Hibernate 中的 session 不同于 JSP 应用中的 HttpSession16。这 里当使用 session 这个术语时,其实指的是 Hibernate 中的 session,在以后会将 HttpSession 对象称为用户 session。 SessionFactory 接口它是负责初始化 Hibernate 的。它既可以充当数据存储源的 代

33、理,还负责创建 Session 对象。在这里还用到工厂模式。但需要注意的是 SessionFactory 它并不是轻量级的,因为一般情况下,一个项目通常只需要一个 SessionFactory 就够,但是当需要操作多个数据库时,可以为每个数据库都指定一个 SessionFactory。 Configuration 类它是负责配置并启动 Hibernate 的,创建 SessionFactory 对象的。 在 Hibernate 的启动过程中,Configuration 类的实例它先定位映射文档位置、读取配 置,然后创建 SessionFactory 这个对象17。 Transaction 接口

34、它是负责事务的相关操作。它是可选的,同时开发人员也可以 设计编写自己的底层事务处理代码18。 第第 3 章章 需求分析需求分析 3.1 网上订餐需求分析网上订餐需求分析 3.1.1 功能需求分析功能需求分析 本系统主要是实现网上浏览菜单、订餐、产生订单等功能的系统。需要实现菜 品信息的提示、购物车管理、客户信息注册、登录管理、订单处理和信息反馈等内 容。需要完成的主要任务如下:当客户进入网上订餐时,应该在订餐页面中显示相 应的菜品信息,来供客户去选择所需要的菜品,同时还提供按菜品名称,快速查询 所需要菜品信息的功能。当客户选择预定某个菜品时,应该能够将对应菜品信息, 如:价格、数量记录到对应的

35、购物车中,此时客户可以选择选择其他菜品或是查看 自己的购物车,最后,在购物车中填下相应的送餐信息,提交订餐的订单后,自动 清除以生成订单的购物车中的信息。餐厅服务人员根据订单信息,查看详细订单明 细并根据实际情况处理订餐。 分析网上订餐系统,制订整个系统框架如图 3-1: 图 3-1 系统整体框架图 目前,用于需求建模的方法有很多,最常见的是包括数据流图(DFD)、实体关 系图(ERD)和 UML 三种方式。UML(统一建模语言)是一种建模语言,它的特点是 良好的定义、表达能力突出、具有多重功能。软件工程中的一些方法和技术也都应 用在其中。从软件需求分析开始就有了很多的应用,并且贯穿始终。本系

36、统使用 UML 中的用例图、活动图、状态图来对需求建模。代码的编写是以最终的类图和对 类图的补充说明文档为基础的。 通常都是先画用例图和分析用例。然后把用例图中的 actor 去除,其余的名词中 的大多就是类了,再根据具体情况斟酌就可以画类图。类图并非一下子画完的,可 以在一开始先画出一些必要的成员变量和成员函数,再分析业务逻辑,并且可以开 始画状态图、活动图和协作图、顺序图,在画这些图的时候对业务逻辑就会有更多 的认识。但这时也会发现类图中的一些漏洞,然后再去补充类图。 3.2 系统架构分析系统架构分析 本网上订餐系统采用了 B/S 架构的设计体系,B/S 结构相对于传统的 C/S 结构,

37、它的这种结构能使得数据只有结果集在浏览器中显示,数据的处理在服务器中进行, 然后用户就不用安装客户端了,而且因为通过服务器端统一管理数据,很大程度降 低了开发 WEB 应用的难度;易于保证数据的一致性。 B/S 模式的三层模型: 第一层表示层。用户接口部分它就是数据的表示层,会把用户和系统连接起来 传递信息。它能够实现对输入的数据进行检查和对外输出的数据的功能,以便显示 出来。当某个 Web 浏览器需要获取资源,对一个服务器要申请服务时,服务器会在 验证了用户信息以后,把所需的文件资料都传送给客户端,其采用的是 HTTP 协议 传送,文件资料就能够被用户接收了并且可以显示在浏览器上。 第二层事

38、务逻辑层。事务逻辑层是应用的主体,它也可以被叫做功能层,业务 处理程序基本上都是在这一层中。统计、汇总、分析、打印功能等等这些功能都是 在功能层。申请的方式是通过 SQL 向数据库来进行操作,根据具体的需求和用户的 特殊要求,来链接程序使用数据库中的数据,处理之后的数据会从数据服务器转到 web 上的服务器,最后客户端从 web 服务器上得到数据。 第三层数据库层。数据库层是由两部分组成,一部分是数据库管理系统,另一 部分是数据库,各个部分独自处理它的任务,任务是它对数据库进行处理,对数据 库的操作,例如增删改查等,web 服务器能够获取最后的结果。负责管理其数据库 的事数据库管理系统,提供给

39、应用程序各种各样的服务,数据库管理系统处在数据 库服务器端18。 3.3 可行性分析可行性分析 随着中国人民的物质、精神和文化水平的不断提高,人们已不再仅是停留在吃 饱的程度,而是不但要吃饱,更要吃好,并且越来越挑刺。正是基于此目的,网上 订餐业务的出现,迎合了这些人的需求,他们不但省去了自己做饭的麻烦,还能寻 找和发现新的菜品,品尝不同风格及不同种类的菜品。网上订餐业务在中国有着良 好的发展空间和不错的发展前景。 综上,我们决定利用 JAVA 和 MySQL 来设计网上订餐系统。JAVA 可以创建 与运用动态、交互的 WEB 服务器应用程序。MySQL 是一个杰出的数据库平台,具 有功能强大

40、,安全可靠等特点,可用于大型联机事务处理、数据仓库及电子商务等 19。 第第 4 章章 系统设计系统设计 4.1 系统设计目标系统设计目标 4.1.1 系统安全性系统安全性 对于不同的用户有着不同的权限,系统对于他们有良好的区分。同时保证了数 据的安全性。可靠准确的数据、可恢复性的系统都是必须的。 4.1.2 可维护性可维护性 在使用系统的过程中,会碰到很多新的要求,有时候还要对新的内容进行扩充, 因此在设计系统时一定要考虑到,设计出来的系统是否能满足实际的应用,并能随 时添加新的功能。管理员会不定时对系统进行更新,如新功能的开发和数据的维护 等。 4.1.3 用户操作用户操作 设计的目标中应

41、该有能够使用户使用方便,操作简洁明了,这样才能更好让系 统发挥其的作用。本系统中对用户有着很明确的操作指示,我们可以在网页中浏览 系统并为用户提供给的任何服务,例如查看菜品信息,个人信息,密码修改以及个 人发表的信息等。 4.1.4 运行速度运行速度 系统响应时间对于系统是至关重要。想到每位用户都不喜欢传统订餐方式等待 的长远时间,后台会不断提高系统的运行速度,来争取在第一时间满足用户的订餐 需求。对于管理员,需要注意的是在提高响应时间的时候,务必不能忘记系统的安 全性。 系统的速度,主要与浏览器与服务器之间的网络通信速度以及服务器在处理事 务时的运行速度。对此,应该选择网络连接更加快速,子链

42、接较少的优质线路对服 务器线路进行铺设,其次是在编程过程中减少对数据库的访问,加快访问速度,事 务处理逻辑更加合理化,减少不必要的计算冗余。 4.1.5 界面界面 人和机器的互动过程(Human Machine Interaction)中,有一个层面,即我们所说 的界面(interface)。用户界面设计是屏幕产品的重要组成部分。界面设计是一个复杂 的有不同学科参与的工程,认知心理学、设计学、语言学等在此都扮演着重要的角 色。用户界面是用户与程序沟通的唯一途径,要能为用户提供方便有效的服务。 用户界面设计的三大原则是:置界面于用户的控制之下、减少用户的记忆负担、保 持界面的一致性。详细说来有以

43、下几点。 1.简易性 界面的简洁是要让用户便于使用、便于了解、并能减少用户发生错误选择的可 能性。 2.用户语言 界面中要使用能反应用户本身的语言,而不是游戏设计者的语言。 3.记忆负担最小化 人脑不是电脑,在设计界面时必须要考虑人类大脑处理信息的限度。人类的短 期记忆极不稳定、有限,24 小时内存在 25的遗忘率。所以对用户来说,浏览信息 要比记忆更容易。 4.一致性 是每一个优秀界面都具备的特点。界面的结构必须清晰且一致,风格必须与游 戏内容相一致。 5.清楚 在视觉效果上便于理解和使用。 4.2 用户类别功能设计用户类别功能设计 4.2.1 订餐用户功能订餐用户功能 图4-1 订餐用户功

44、能图 4.2.2 餐馆管理员功能餐馆管理员功能 图4-2 餐馆管理员功能图 4.3 总体设计总体设计 4.3.1 用户登录用户登录 图 4-3 用户登录流程图 用户登录实现为本网站注册用户提供身份确认的功能,保证合法用户的应有权 益。而且是否登录也将决定用户能否订餐。用户登录的前置条件是在登录前,用户 必须完成“注册” 。流程如下:进入网站首页之后,会看到一个登陆页面,只有在注 册之后才能使用本系统,注册之后,后台会收到相关信息,只有用户名和密码正确 才能登陆成功。 4.3.2 订餐服务订餐服务 图 4-4 订餐服务流程图 在订餐服务用例中,每个用户都有个购物车,用户可以将自己选定的菜品及其

45、数量放入到购物车中,并且随时可以查看自己预定的菜品的数量和总价格。本用例 开始前用户必须登录到系统中。如果用例成功,顾客可以浏览自己购物车中的信息 并决定是购买还是删除。 4.3.3 订餐处理订餐处理 图 4-5 订单处理流程图 当用户提交已订的菜单或想取消已订的菜单时,都会在前台自动生成;处理订 单的过程是订餐管理人员参与的,当前台有新的订单生成时,会自动在后台的现有 订单列表中显示出来,订餐管理人员可以点击查看未处理的订单,根据实际情况进 行处理,或者删除不需要的订单记录。具体流程如下:对于用户,在生成订单之前, 可以随意浏览菜单信息,并选择是否订购及提交之前是否删除;对于管理员,可以 查

46、看用户生成的订单信息,并在确认用户收到所订购的菜之后,有权删除该用户的 订单。 之前已经完成需求分析,现在需要进行概念设计、逻辑设计和物理设计,本章 将叙述这三个阶段的设计思路和设计过程。 4.4 数据库设计数据库设计 4.4.1 数据库设计概述数据库设计概述 概要设计的主要任务是把需求分析得到的 DFD 转换为数据和软件结构。软件结 构在设计时需要完成的任务是:把按功能的不同模块划分、确立层次结构及相互调 用、接口与人机间的联系。数据的结构特性的确定、数据特征的全部描述和数据库 的详细设计。显然,经过概要设计之后,就建立了一个系统的逻辑模型,该模型不 受具体的计算机影响20。 4.4.2 数

47、据库表的设计数据库表的设计 数据库的主要表详细结构如下: 表 4-1 用户表:user 字段名类型说明 useridInt(11)用户 id uemailVarchar(32)用户邮箱 UnameVarchar(32)用户名 UpswdVarhar(32)用户密码 UphoneInt(11)用户电话 isConfirmTinyint(4)系统管理员权限 表 4-2 餐馆表:restaurant 字段名类型说明 RidInt(11)餐馆 id RpswdVarchar(32)餐馆登陆密码 RseatVarchar(128)餐馆地址 RitemVarhar(128)餐馆特色 RphoneVarch

48、ar(32)餐馆电话 RstartmoneyFloat(8)起送金额 RsendmoneyFloat(8)送餐金额 Rstatuetinyint(4)餐馆状态 RstyleTinyint(4)餐馆类型 RnameChar(128)餐馆名称 表 4-3 菜系表:cookstyle 字段名类型说明 csidInt(11)菜系 id RidInt(11)关联餐馆 DnameVarchar(128)菜系名称 表 4-4 菜品表:dishes 字段名类型说明 didInt(11)菜品 id RidInt(11)关联餐馆 DnameVarchar(128)菜品名称 DmoneyFloat(8)菜品价格 C

49、sidInt(11)关联菜系表 表 4-5 评价表:discuss 字段名类型说明 DisidInt(11)评价 id RidInt(11)关联餐馆 UseridInt(11)关联用户表 DiscontentText评论内容 TastenumberTinyint口味得分 ServicenumberTinyint服务得分 SpicenumberTinyint速度得分 DistimeDatetime评论时间 表 4-6 回复评论表:redis 字段名类型说明 RedisidInt(11)回复评论 id DisidInt(11)关联评论表 RediscontentText回复评论内容 表 4-7 公告表:notice 字段名类型说明 NidInt(11)公告 id TitleChar(128)标题 NcontentText公告内容 NtimeDatetime发布时间 表 4-8 送餐时间表:sendtime 字段名类型说明 S

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1