《外卖订餐系统的设计与实现论文》由会员分享,可在线阅读,更多相关《外卖订餐系统的设计与实现论文(51页珍藏版)》请在金锄头文库上搜索。
1、北北京京师师范范大大学学珠珠海海分分校校 本科生毕业论文 论文题目:论文题目:外外卖订卖订餐管理系餐管理系统统的的设计设计与与实现实现 2010 年 4 月 30 日 北京师范大学珠海分校学位论文写作声明和使用授权说明北京师范大学珠海分校学位论文写作声明和使用授权说明 学位论文写作声明学位论文写作声明 本人郑重声明: 所呈交的学位论文,是本人在导师的指导下,独立进行研究工作 所取得的成果。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经 发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中 以明确方式标明。本声明的法律结果由本人承担。 论文作者签名: 日期:
2、年 月 日 学位论文使用授权说明学位论文使用授权说明 本人完全了解北京师范大学珠海分校关于收集、保存、使用学位论文的规定,即: 按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和 电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制 手段保存论文;在不以赢利为目的的前提下,学校可以将学位论文编入有关数据库,提 供网上服务。 (保密论文在解密后遵守此规定) 论文作者签名: 导师签名: 日期: 年 月 日 北京师范大学珠海分校信息技术学院 1 摘摘 要要 随着外卖订餐在高校越来越普及,传统的电话订餐给顾客跟外卖店带来不方便, 如何使订餐更快速,更方便已
3、成为众多高校学生关注的问题了。本外卖订餐管理系统 是针对高校外卖店进行具体的需求分析,采用 OOA(面向对象分析)和采用 UML 工具 辅助开发分析,基于 S2SH(Struts2+Spring+Hibernate)架构进行设计和开发。论文 主要描述外卖订餐管理系统的开发流程,分别从需求分析和系统设计、详细设计与系 统实现这几个阶段进行描述。 关键词关键词:订餐管理系统 S2SH OOA 北京师范大学珠海分校信息技术学院 2 ABSTRACT With more and more popular in universities order take-out, due to the tradit
4、ional telephone reservation for customers to bring inconvenience take-away meal, how to make more quickly, more convenient has become the concern of the students. The take-away meal management system in colleges and universities is the concrete take-away demand analysis, using object- oriented analy
5、sis (OOA) and using UML tools to assist in the development, using Struts2-Spring-Hibernate framework to design and development. Thesis mainly describes take-away meal management system process, separately from the demand analysis and system design, detailed design and realization of this system are
6、described several stages. KeyKey words:words: meal management system S2SH OOA 北京师范大学珠海分校信息技术学院 3 目目 录录 一、绪论 .1 1.1 背景 .1 1.2 北师大珠海分校外卖订餐的现状分析 .1 1.3 外卖订餐管理系统的可行性分析与作用 .1 1.4 系统简介 .2 二、相关技术的介绍 .3 2.1 STRUTS2 技术介绍 3 2.2 HIBERNATE技术介绍 4 2.3 SPRING技术介绍 .5 2.4 DWR技术介绍 .6 三、系统需求 .8 3.1 UML 7 3.2 需求分析 .8 3
7、.3 系统功能 .8 四、系统设计 11 4.1 系统总体结构 11 4.2 系统架构方式 11 4.3 HIBERNATE自动建表.11 4.4 详细设计 17 4.4.1 类设计 .17 4.4.2 流程分析 .19 4.4.3 时序图分析 .20 4.4.4 主要界面设计 .26 五、系统实现 30 5.1 开发工具与环境30 5.2 环境搭配30 5.3 编码实现32 5.3.1 DAO 层的编写 33 5.3.2 Service 层的编写 34 5.3.3 WEB 层的编写.35 5.3.4 DWR 应用.38 结 论 42 参考文献 43 致 谢 44 北京师范大学珠海分校信息技术
8、学院 第 1 页 共 44 页 一 、绪 论 1.11.1 背景背景 进入 21 世纪以来,餐饮行业以年均 20%的增长速度,成为国民经济中的发展 最快的行业之一。随着人们生活水平的不断提高,人们甚至想要不出门就能吃到可 口的饭菜这就是外卖。在我国高校内餐饮行业外卖行业更是发展最快的一个行 业,在北师大珠海分校每年都有几间新的外卖店的产生。外卖订餐已经成为北师大 珠海分校学生生活中不可缺的一部分,而订餐的方式也随着学生们的要求提高,不 断的多样化和成熟化。 1.21.2 北师大珠海分校外卖订餐行业的现状分析北师大珠海分校外卖订餐行业的现状分析 依靠电话订餐是北师大目前最主要的订餐方式,如比较大
9、的外卖店关东、喜苑、 红梦缘都是使用电话订餐方式,此种订餐方式有不少的缺陷,比如:时效问题、打电 话的成本等等。目前北师大外卖订餐行业的现状分析如下: (1) 外卖店数量众多,各店竞争较大。 (2) 外卖店多数实行人工方式订餐,即打电话订餐登记。这种订餐方式造成订餐很 不方便特别在订餐高峰期,经常出现打电话打不通的现象。 (3) 外卖店多数没有实行市场分析,一些菜式在顶峰期出现缺菜现象,而一些菜式 却出现积累现象,造成了资源的浪费和经济损失。 (4) 外卖店没有对外卖进行财务管理,造成对店内资金管理不明确和店员滥用资金 的可能。 (5) 无法为店内管理层提供准确的决策信息,掌握及时的市场消息。
10、 通过分析北师大的外卖行业的现状,不难发现国内高校的外卖店大多数都是依靠 手工的管理方式,没有实行外卖订餐管理的信息化,所以造成了不少问题。 1.31.3 外卖订餐管理系统的可行性分析及其作用外卖订餐管理系统的可行性分析及其作用 依靠传统的电话订餐实行外卖订餐不仅造成学生的方便,也对外卖店的经营产生了 不良影响。实行电话订餐有以下几个缺点:一、在订餐高峰期,一架电话根本那么多 的订餐顾客,有时候要多次拨打才能接通,这种情况下有时也造成双方语气匆忙,态 度暴躁,给订餐带来极大的不便;二、点菜不方便,学生如果没有点菜单,很难点菜, 另外外卖店得每栋宿舍每间地派传单,无疑又是一笔不小的开资了;三、学
11、生必须支 付打电话的成本,虽然有些外卖店有校园短号但对于一些没开通校园短号的学生也不 是很方便。 通过上面分析,电话订餐已成为一种阻碍外卖行业发展的落后方式了,实行订餐 管理的信息化迫在眉睫,利用外卖订餐管理系统对外卖流程实行信息化,不仅给订餐 顾客带来了方便更给外卖店带来了经济利益。外卖订餐管理给顾客和外卖店带来了双 赢。对于顾客,不用再担心高峰期打电话订餐失败了,顾客可以在网站浏览相关菜式, 添加喜欢的菜式,解决了以前的那种电话订餐造成订错菜式的现象。对于外卖店更是 带来了长远的利益,减少外卖店的人力和财力,通过订餐管理系统使外卖店能够及时 北京师范大学珠海分校信息技术学院 第 2 页 共
12、 44 页 掌握市场信息,推销新菜式和实行更有效的经营策略。 1.41.4 系统简介系统简介 本系统主要针对高校的外卖订餐流程和对订单处理实行信息化而构建出来的 B/S 平台,学生通过浏览器上网访问订餐网站可以实现网上浏览菜式和订餐功能,店员通 过后台管理登陆实现对订单的处理,通过信息化处理给学生订餐带来方便更给外卖店 管理人员带来了长远利益。 北京师范大学珠海分校信息技术学院 第 3 页 共 44 页 二 、相关技术介绍 本外卖订餐管理系统选取 S2SH 架构来设计和开发,S2SH 是 SSH 升级版,以前的 SSH 架构中的用到的 MVC 框架是 struts,而 S2SH 中的 MVC
13、框架用到的是 struts2,struts2 与 struts 有很大的区别,配置更灵活,开发更方便,利用其开发的 插件与 hibernate,spring 能达到无缝集成,本系统采用三层架构,用 struts2 处理 前端,hibernate 封装对数据库的访问,spring 对 struts2、hibernate 和业务逻辑层 中进行对象的管理,三个框架各司其职,有利于项目开发的分工,使项目开发达到更 灵活性和可维护性。S2SH 三层架构如图 1 所示: Spring Hibernate Struts2 DAO Action ServiceDB 图 1:S2SH 三层架构 2.12.1 s
14、truts2struts2 技术介绍技术介绍 Struts2 是目前比较成熟的 Web 开发框架, Struts 2 框架是 Struts 1.X 的替代 版本,Struts 2 框架整合了 Struts 1.X 框架和 WebWork 框架的优点。相对 Struts 1.X,Struts 2 已经有了非常大的改变,去掉了 ActionForm,降低了框架组件之间的 耦合性,Struts 2 的 Action 只是普通的 Java 类(POJO) ,给模块测试工作带来了极大 的方便。Struts 2 提供了强大的整合能力,支持多种返回结果类型,改进了 Struts 1.X 的标签库,引入 OG
15、NL 表达式和值栈的概念,给开发者带来了更好的体验1。从全局的 角度来看 ,Struts2 是一个 pull(拉)类型的 MVC(或者 MVC2)框架,它与传统类型 的 MVC 框架的不同之处就在于在 Struts2 中,Action 担任的是模型的角色,而非控制 器的角色,虽然它的角色仍然有些重叠。 “pull”的动作由视图发起,它直接从 Action 里拉取所需的数据,而不是另外还需要一个单独的模型对象存在2。 北京师范大学珠海分校信息技术学院 第 4 页 共 44 页 图 2: MVC / Struts2 架构 图 2 描述了 Struts2 架构中的模型、视图和控制器。控制器通过 St
16、ruts2 分发 Servlet 过滤器(也就是人们常说的拦截器)来实现,模型通过 Action 实现,视图则 通过结果类型和结果组合实现。值栈和 OGNL 提供了公共的线程和链接,并使得不同组 件可以相互集成。Struts 2 设计的精巧之处就是使用了 Action 代理,Action 代理可 以根据系统的配置,加载一系列的拦截器,由拦截器将 HttpServletRequest 参数解析 出来,传入 Action。同样,Action 处理的结果也是通过拦截器传入 HttpServletResponse,然后由 HttpServletRequest 传给用户。其实,该处理过程是 典型的 AOP(面向切面编程)的方式,Struts 2 处理过程模型如图 3 所示: 图 3: Struts2 处理过程模型 北京师范大学珠海分校信息技术学院 第 5 页 共 44 页 2.22.2 hibernatehibernate 技术介绍技术介绍 Hibernate 是一个优秀的 ORM 框架,通过使用 Hibe