毕业设计(论文)Zend及mvc模式下的电子商务及应用.doc

上传人:文库蛋蛋多 文档编号:3977295 上传时间:2023-03-30 格式:DOC 页数:34 大小:271KB
返回 下载 相关 举报
毕业设计(论文)Zend及mvc模式下的电子商务及应用.doc_第1页
第1页 / 共34页
毕业设计(论文)Zend及mvc模式下的电子商务及应用.doc_第2页
第2页 / 共34页
毕业设计(论文)Zend及mvc模式下的电子商务及应用.doc_第3页
第3页 / 共34页
毕业设计(论文)Zend及mvc模式下的电子商务及应用.doc_第4页
第4页 / 共34页
毕业设计(论文)Zend及mvc模式下的电子商务及应用.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《毕业设计(论文)Zend及mvc模式下的电子商务及应用.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)Zend及mvc模式下的电子商务及应用.doc(34页珍藏版)》请在三一办公上搜索。

1、郑州大学毕业设计(论文)题 目: Zend及mvc模式下的电子商务及应用 指导教师: 职称:讲师 学生姓名: 学号: 专 业:计算机网络技术 院(系):郑州大学升达经贸管理学院 完成时间:2011年05月05日 2011年 05月 05日摘 要企业需要更高效能且技术统一的平台,以整合当前的网上业务,同时让本身的系统能够随时便利升级,以支持未来网上业务的发展。建设集多功能(如客户关系管理、网上销售、知识管理、内容管理等)于一身的企业门户网站,成为势在必行的上网策略。本系统的开发恰恰满足了这一要求。说明书中详细介绍了系统的需求分析、总体设计及各功能模块的详细设计。php继承了所有php语言的特点,

2、而且发展前景十分的广阔,因此本项目才用php语言作为根本,选用经典的Zend作为开发架构,在数据持久层方面则使用了Mysql.本文首先介绍了系统的开发背景、研究现状和意义还有所用到的开发技术。然后详细讲解了系统的功能模块划分和数据库设计。最后,详细介绍了系统的实现。本系统主要针对中小型企业的内外部管理,包括以下五大功能模块:新闻管理,订单管理,产品管理,留言管理,招聘管理。本系统投入运行后,能满足一般中小型企业的管理需求,是一个能够独立运行的B/S公司网站。关键字 MVC;Zend;Mysql;php;企业网站Abstract Higher performance and technology

3、 companies need a unified platform to integrate the current on-line business, while allowing their systems to facilitate the upgrade at any time, in order to support future Internet business. Construction of multi-set (such as customer relationship management, online sales, knowledge management, con

4、tent management, etc.) in an enterprise portal strategy has become imperative for the Internet. The development of this system precisely meets this requirement. Paper details the system requirements analysis, design and the detailed design of modules. php inherits all the characteristics of php lang

5、uage, and broad prospects for development, so this project was to use php language as a fundamental, classic Zend selected as the development framework for data persistence layer side in the use of Mysql. This paper introduces the system development background, current situation and the significance

6、 of which had been used in the development of technology. And then explain in detail the system function model and database design. Finally, the details of the system implementation. This system is mainly for internal and external management of small and medium enterprises, including the following f

7、ive modules: information management, order management, product management, message management, recruitment management. The system put into operation, to meet the management needs of small and medium enterprises, is a capable of independent operation of the B / S website. Keyword MVC; Zend; Mysql; ph

8、p; Corporate Website目 录ABSTRACTI1 引 言11.1 选题背景介绍11.2 研究现状11.3 本课题研究的意义22 可行性分析22.1 技术可行性22.1.1 动态网站技术介绍22.1.2 程序语言的选择32.1.3 语言优势52.1.4 操作可行性62.2 环境可行性分析62.2.1 软件环境62.2.2 硬件环境63 需求分析63.1 项目背景63.2 确定参与者73.3编写用例描述84 系统设计94.1 总体设计94.2 数据库设计104.2.1 数据库的需求分析104.2.2 数据库E-R图104.2.3 数据库表的具体设计114.3 详细设计144.4

9、开发架构154.4.1 软件开发架构的意义154.4.2 Zend架构简介164.4.3 smarty模板简介194.5 数据持久层194.5.1 持久化数据204.5.2 持久化技术215 系统实现235.1数据的访问235.2对页面的控制245.3技术难点255.3.1 中文乱码255.3.2 图片处理255.3.3 安全性265.4技术重点26总结27参考文献28致谢291 引 言1.1 选题背景介绍 在如今这样一个企业与经济都处于一个高速发展的社会,企业之间的主要竞争手段已逐渐的向一个有效合理的管理转变,而这正是阻碍国内大部分企业发展,随着中国加入WTO组织的步伐,国内企业逐渐走向多元

10、化,昔日的文件加人工管理已越越不能满足一个个走向开世界开放式的多元化企业的管理需要,这就导致一个能够有效组织并统一化管理公司管理网站。一个好的公司网站应该具有的两方面的作用: (1)对内:(1) 可以加强企业内部员工之间的交流(2) 可以简化人事部对企业整体人事的管理(3) 可以更精确地管理员工的财务事宜(2) 对外: (1)可以提高企业的知名度 (2)可以让外界更了解企业 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。应用计算机对员工信息与工作的有效管理具有人工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠

11、性强、存储量大、保密性能好、交流方便等。这些优点能够极大地提企业管理的工作质量和效率,也是企业管理的科学化、规范化、信息化管理的重要条件。1.2 研究现状 长期以来企业信息管理工作一直是使用传统人工的管理方式,这样的管理方式存在着:效率低、保密性差,大量的文件和数据难于查找、更新和维护,造成了办事效率低这样的现状,远远不能适应发展的需要。六十年代初期,计算机技术就开始应用于数据库的管理,形成了初期的信息系统。但是由于当时计算机硬件系统较弱,限制了软件系统的发展,信息系统只是简单的数据的集合。进入七十年代以后,由于计算机硬件和软件技术的飞速发展,尤其是大容量存储设备硬盘的使用,为空间数据的录入、

12、存储、检索和输出提供了强有力的手段。一些国家先后建立了许多不同专题、不同类型、不同规模的各具特色的信息管理系统。九十年代至今是信息管理系统的用户时代。一方面,信息管理系统已成为许多机构必备的工作系统。另一方面,社会对信息管理系统的认识普遍提高,需求大幅度增加,从而导致信息管理系统应用的扩大与深化,信息管理系统成为现代社会最基本的服务系统。我国的信息管理系统也是九十年代初开始快速发展的。经过十余年的发展,我国的数据库管理技术也广泛地应用到各个领域,并且形成了产业化。1.3 本课题研究的意义 随着中国加入WTO组织的步伐经济的国际化,企业的运营已不再是单枪匹马的个人英雄主义时代,企业要想长期的发展

13、就必需与国际化接轨,这就不仅要对企业内部员工与数据的有效管理,而更讲究的是合作,企业之间的合作就必需有一个有效且清晰的平台,一个基于MVC的B/S公司网站正好可以满足企业的各方面需要企业内部信息高效合理化管理及与合作伙伴之间的交流等。 企业管理信息化是提高企业员工工作效率、企业地位与综合竞争力的一个重要标志,也是企业提高工作效率与经济国际化的一个必不可少的手段。本公司网站以多数企业内外部信息的实际管理方式及国际化发展的要求为主导并针对具体企业的实际需求开发,论述了企业内部结构化管理与国际化发展的需求,探讨了J2EE的体系结构及基于J2EE的系统设计的实用性、安全性、扩展性和可靠性,并对已开发成

14、功的系统的特点和功能作了简要的介绍。2 可行性分析2.1 技术可行性2.1.1 动态网站技术介绍 Internet起源于20世纪60年代的美国,它在近几年迅速风靡全球,其根本原因不仅在于她拥有卓越的国际通信功能,更在于它拥有巨大的信息资源.所谓的Internet是指由分布在全世界成千上万的计算机网络遵循一定的通讯协议,并相互联系在一起而形成的国际互连网络,也就是说,Internet是建立和使用这些网络的人群,群体,公司以及各种网络资源的集合体. 随着网络技术的不断发展,单纯的静态页面已经不能满足发展的需要,因为静态页面是用单纯的HTML语言组成的,它没有交互性.因此,为了满足实际的需要,许多网

15、页文件扩展名不再只是”htm”,”html”,出现了以”php”,”asp”,”jsp”,”shtml”等为后缀的网页文件,这些都是采用动态网页技术制作出来的.2.1.2 程序语言的选择 (1)CGICommon Gateway Interface,通用网关接口).首先,客户端(即Web浏览器)根据某资源的URL(Uniform Resource Locator,统一资源定位器)向Web服务器提出请求,Web服务器的HTTP Daemon(守护进程)将此请求的参数通过标准输入stdin和环境变量传递给指定的CGI程序,并启动此应用程序进行处理,如要存取数据库服务器上数据库的数据,则向数据库服务

16、器发出处理请求,数据库服务器将执行结果返回给CGI程序,CGI程序处理结果通过标准输出stdout返回给HTTPDaemon进程,再由HTTP Daemon进程返回给客户端,由浏览器解释执行,将最终结果在用户面前显示.CGI允许Web服务器运行外部应用程序,以通过外部程序来访问数据库等一些外部资源,并产生HTML文档给浏览器.但每次请求CGI程序都要重新启动程序,影响了响应的速度,且CGI程序不能被多个客户请求共享,影响了各种资源的使用效率.为了克服CGI的这些缺点,一些Web服务器厂商开发出了专用的API(Applications Program Interface应用程序接口),这样就允许

17、程序员编写程序来扩展服务器的功能.API相对于CGI与Web服务器的结合更加紧密,占用的资源较少,运行的效率大有提高,安全性与保护性更好.但是开发API应用程序比开发CGI应用程序复杂得多,要求程序员掌握更多的计算机软件知识,且各种API之间的兼容性不好,业界没有一个统一的标准,使得API程序只能工作在专用的Web服务器与操作系统之上.编写CGI的程序设计语言有许多种,常用的有C,PERL,Visual C+等,由于对程序员的要求较高,且编写与 调试比其它队编程技术困难,故近年来基于B/S的信息系统工程时间中已很少被采用.(2)ASPASP的程序比HTML更方便而更富有灵活性.是在Web服务器

18、端运行,运行后再将运行结果以HTML格式传送至客户端的浏览器.因此ASP与一般的脚本语言相比要安全得多.ASP最大的好处就是可以包含HTML标签,也可以直接存取数据库及使用无限扩充的ActiveX控件,用户可以直接使用ActiveX控件,调用对象方法和属性,以简单的方式实现强大的交互功能.但ASP技术也并非完美无缺,由于它基本上是局限于微软的操作系统平台,主要的工作环境是微软的IIS应用程序结构,又因ActiveX对象具有平台特性,所以ASP技术要实现在跨平台Web服务器上工作,不是很容易.Microsoft的ASP技术目前已发展到.NET版.对很多人来说,用ASP来创建Windows服务器平

19、台上的动态Web网页,整个站点和基于Web的应用程序已经成为及其自然的方法.在浏览器地址栏中,文件扩展名.asp同表示动态创建的网页的文件扩展名.pl或.cgi一样,已被浏览者所接受.开发ASP程序,常常先设计静态网页的栏目格式和排版形成HTML语言,接着在HTML的基础上添加脚本程序,形成ASP程序后再实现动态的Web网页.在ASP的程序开发中,它所用的脚本语言是phpScript和VBScript,在默认情况下使用的是VBscript,它是VB程序设计语言的一个子集,语法与VB基本相同.ASP中的ADO对象用来执行与数据库相关的操作,ADO再以OLEDB或ODBC的方式访问数据库,在.NE

20、T版本中这一对象称为ADO.NET.(3)PHP PHP即Hypertext Preprocessor(超文本预处理器),它是当今Internet上最为火热的脚本语言,其语法借鉴了C,php,Perl等语言,而且只需要很少的编程知识就能使用PHP建立一个真正交互的Web站点.它与HTML语言具有非常好的兼容性,使用者可以直接在脚本代码中加入HTML标签或者在HTML标签中加入脚本代码从而更好地实现页面控制.PHP提供了标准的数据库接口,数据库连接方便,兼容性更强,扩展性强,可以进行面向对象编程.但是PHP对组件的支持不够,扩展性差,常用它与免费的数据库系统MySQL协同一起用来构建中小型网B/

21、S应用大网站或信息系统.(4)JSP JSP(phpServer Pages)是由Sun公司倡导,许多别的公司参与一起创建的一种新动态网页技术标准,类似其他技术标准.在传统的网页HTML文件(*.htm,*.html)中加入php程序片断(Scriptlet)和JSP标签,构成了JSP网页(*.jsp)Servlet/JSP Container收到客户端发出的请求时,首先执行其中的程序片断,软后将执行结果以HTML格式响应给客户端,其中程序片断可以是:操作数据库,重新定向网页以及发送E-Mail等等,这些都是建立动态网站所需要的功能.所有程序操作都在服务器端运行,网络上传送给客户端的仅是得到的

22、结果,与客户端的浏览器无关,因此,JSP称为Server-side Language.所以被许多人认为是未来最有发展前途的动态网站技术之一. 经过如上的程序语言的比较,PHP功能相对简单,不适合作大程序,而CGI效率相对较低,所以也不考虑,因为该系统并没有原有的基础平台需要扩展,也不需要与其他系统进行太多的交互,所以使用J2EE的模式并不能够体现出J2EE本身的优势,而JSP又是J2EE的核心技术之一,可以随时升级为J2EE程序,这里暂时不考虑采用J2EE,这样只需要在ASP和JSP中进行选择.在进行了诸多因素的比较之后,最终认为目前这个阶段比较合适的是JSP,而选择Zend架构作为开发的主体

23、框架,选用Mysql作为数据持续性处理层,则是考虑到了其高速的开发效率,及代码重用性高,易于维护等各种优势.其最终目的是希望提高系统底层业务逻辑的可重用性,增加系统的可扩展性,降低系统维护成本.2.1.3 语言优势(1)将内容的生成和显示进行分离 使用php技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面.使用php标识或者小脚本来生成页面上的动态内容.生成的内容的逻辑被封装在标识和phpBeans组件中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用php页面而不影响内容的生成.(2)一次编写,到处运行 作为php平台的一部分,php拥有php编程语言”

24、一次编写,到处运行”的特点,随着越来越多的供应商将php支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,但并不影响当前的应用.(3)php的平台适应性更广 这是php比ASP的优越之处,几乎所有的平台都支持php,它们可以在任何平台下通行无阻.虽然NT的OS占据了很大的市场的份额,但在服务器方面UNIX的优势仍然很大.从一个平台移植到另一个平台,php和phpBeans甚至不用重新编译,因为php字节码都是标注的字节码与平台无关. (4)健壮的存储管理和安全性 由于php页面的内置脚本语言是基于php编程语言的,而且所有的php页面都被编译为php Servlet,php页面就具有

25、php技术的所有优点,包括健壮的存储管理和安全性(5)数据库连接技术 很多的OS中都带有JDBC驱动程序,php就通过JDBC与数据库连接,执行查询,提取数据等操作.Sun公司还提供了JDBC-ODBC的桥连方式,因此php也可以访问带有ODBC驱动的数据库,目前大多数数据库系统都带有ODBC驱动,所以php能访问诸如Oracle,Sybase,MS SQL Server 和Access等类型的数据库.2.1.4 操作可行性 对于用户来说,本系统只要求使用者掌握一定的上网经验,经过仔细设计和测试之后的系统具有操作简单,方便灵活等优点,足可以满足各种用户的不同需求,同时也方便了公司的内部管理。管

26、理人员及用户一定会在短时间内掌握并熟练使用。只要动一动鼠标键盘就可以达到想要的效果。2.2 环境可行性分析2.2.1 软件环境操作系统:Windows/linux/unix数据库: mysqlWeb服务器:Apache开发工具:PHP-Eclipse2.2.2 硬件环境AMD Athlon 64 3000+,KingMax PC3200 512MB 2,Gainward NV35XTSeagate SATA 8M 120GB 23 需求分析3.1 项目背景现在网络的发展已呈现商业化、全民化、全球化的趋势。目前,几乎世界上所有的公司都在利用网络传递商业信息,进行商业活动,从宣传企业、发布广告、招

27、聘雇员、传递商业文件乃至拓展市场、网上销售等,无所不能。如今网络已成为企业进行竞争的战略手段。企业经营的多元化拓展,企业规模的进一步扩大,对于企业的管理、业务扩展、企业品牌形象等提供了更高的要求。在以信息技术为支撑的新经济条件下,越来越多的企业利用起网络这个有效的工具。网站早已由论证阶段进入了实质阶段,尤其为企业提供一个展示自己的舞台、为消费者创造一个了解企业的捷径。公司可以通过建立商业平台,实行全天候销售服务,借助网络推广企业的形象、宣传企业的产品、发布公司新闻,同时通过信息反馈使公司更加了解顾客的心理和需求,网站虚拟公司与实体公司的经营运作有机的结合,将会有利于公司产品销售渠道的拓展,并节

28、省大量的广告宣传和经营运营成本,更好地把握商机。随着全球信息网络的发展,Internet在世界上已不仅仅是一种技术,更重要的是它已成为一种新的经营模式。从4C( Connection.,Communication ,Commerce , Co-operation )层次上彻底改变了人类工作,学习,生活,娱乐的方式,已成为国家经济和区域经济增长的主要动力。Internet正成为世界最大的公共资料信息库,它包含无数的信息资源,所有最新的信息都可以通过网络搜索获得。更重要的是,大部分信息都是免费的,应用电子商务可使企业获得在传统模式下所无法获得的巨量商业信息,在激烈的市场竞争中领先对手。3.2 确定

29、参与者参与者是与系统交互的外部实体,既可以是人员也可以是外部系统或硬件设备为。同此可以确定“公司内部员工”、“客户”以及“游客”为该系统的参与者。 客户基于MVC的电子商务网站系统管理员 游客 基于MVC的电子商务网站的参与者3.3编写用例描述根据已确定的系统参与者及系统用例可以画出该系统的用例图如下:客户 登录 删除商品 购买商品 更新商品 系统管理员 查看商品 删除用户 游客4 系统设计 系统设计是在系统分析的基础上由抽象到具体的过程.主要目标是将系统分析阶段所提出的反映了信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理(技术)方案,为下一阶段系统实施提供必要的技术资料,应

30、符合系统性,灵活性,可靠性,经济性的要求.4.1 总体设计电子商务网站用户管理产品管理仓库管理订单管理删除商品添加商品删除用户查看订单查看仓库商品发布商品删除商品修改商品信息图4.2 基于MVC的电子商务网站功能模块图4.2 数据库设计4.2.1 数据库的需求分析 依据项目的处理需求,对应数据表的设计及功能如下: 管理员信息表: 存放管理员的基本信息 产品明细表: 存放产品的详细信息 推荐商品表: 存放定期推荐的商品 商品发布表: 存放发布商品的信息 订单表: 存放注册信息的订单 用户表: 存放注册用户的基本信息 商品表: 存放商品的基本信息4.2.2 数据库E-R图(1)局部E-R图 数量交

31、货日期类型小图路径产品订单订单编号产品名其他信息总价产品名浏览数介绍大图路径订购mn订单与产品的关系图(2)总体E-R图产品订单用户修改购物车商品信息浏览查看购物车信息下订单记录 n m 1 1 N m N 总体E-R图4.2.3 数据库表的具体设计表4.1 admin : 管理员信息表表4.2 category : 产品明细表表4.3 goodways : 推荐商品表表 4.4 inform : 商品发布表表 4.5 orders : 订单表表 4.6 user : 用户表表4.7 goods : 商品信息表表4.8 product : 订单明细表4.3 详细设计 功能设计充分考虑到系统持有

32、公司展示企业形象、扩大知名度的需要.网站采用了多个动态模块,企业能够自主、独立的完成网站中大多数内容的更新,同时,设计以展示系统持有公司形象为主,主要体现基于MVC的公司网站的整体美感.增强了企业在访问者心中的亲和力认知度,使系统持有公司的产品为更多的客户所瞩目.网站内容及结构框架设计上力求体现简捷性与人性化的思想,在功能设计上配合企业的经营模式、经营思想、发展战略.页面的设计将充分体现系统持有公司大企业的形象,在框架编排、色彩搭配以及Flash动画的适当穿插都做到恰到好处,使整个网站在保证功能的前提下给使用者带来良好的视觉享受和精神愉悦感.关于网站具体信息请看下面的介绍. 网站首页是网站的第

33、一内容页,整个网站的最新、最值得推荐的内容将在这里展示.以达到整个公司的企业形象的和谐统一;在制作上采用php动态页面,系统可以调用最新的内容在首页显示.在内容上,首页有公司的新闻热点,推荐产品等信息,并且管理员在后台可以动态更新首页的内容,使整个网站时时充满生机和活力.在设计上,注重协调各区域的主次关系,以营造高易用性与视觉舒适性的人机交互界面为终极目标.给浏览者耳目一新的感觉,吸引浏览者经常访问基于MVC的公司网站. 信息列表的模块为基于MVC的公司网站的重要部分,详细介绍了公司的产品.可以浏览全部的产品,可以按产品的分类浏览产品,也可以分别按名称或简介查找产品.在找到自己理想的产品之后,

34、点击”加入收藏”的链接,就可以增加一张订单, 在订单中,可以修改定购产品的数量,交货的日期,以及其他的要求等等.然后在一周,公司的负责人员会打电话联系用户,以确定生产. 另外在后台访问数据库的时用到了Zend. 4.4 开发架构4.4.1 软件开发架构的意义 对于已经习惯了使用传统的php设计方式实现动态网站的程序员,在刚开始接触Zend时经常会出现一种困惑:专业书籍和文章中总是使用Zend Framework这种说法,Zend通常也被称为是一种Web应用开发的架构(Framework),那么到底什么是架构,软件开发架构的意义又是什么呢? 如果将早期的软件开发方式比喻为传统手工业生产方式的话,

35、那么基于软件开发架构的开发方式则是大型现代化工厂生产方式的体现.虽然二者都能够制作出产品,但是在生产效率及产品质量的保证上显然会有巨大的差异. 汽车生产厂家在制造一辆汽车时,总是先在各条生产线上制作出不同类型的零件,最终再由专业的技师在专业的组装生产线上将成百上千的零件组装成一台完整的汽车,显然,设计者的主要精力并不是用于重复地制造相同的车轮,相同的方向盘,而是利用现成的车轮组装出一辆辆不同的汽车.同样,开发人员也可以利用软件架构中提供的组建库(如同已经生产好的规范化的汽车核心零部件库),按照既定的组装方式将不同的组建应用在软件产品的各个环节,最终开发出一个完整的,高质量的软件产品. 实际上,

36、如果需要,汽车设计者也可以将原有的车轮进行改造,例如涂上不同的颜色,贴上不同的装饰物等.同理,软件开发人员可以在现有组件的基础上进行扩展和改进,这实际上充分地实现了软件开发的可扩展性. 组件复用是面向对象编程思想的结晶,而在软件架构的基础上进行开发可以最大限度地实现组件的复用.在大型,多层结构的软件开发项目中,开发和使用具有可重用性,可扩展性,经过良好测试的软件组织,可以使开发者从大量繁琐的代码工作中解脱出来,专注于软件设计和业务逻辑的实现.通常将被验证为有效的,相同类型问题的解决方案进行抽象,即可提取形成一个应用程序框架,即Framework.每一种Framework都有自己的一套明确的实现

37、机制,通常在Framework结构中都会包含一个”命令和控制”组件(“command and control”component),类似于工业生产中的”控制中心”,开发人员通过它可以很容易地控制,扩充和实现该Framework上的开发结构.4.4.2 Zend架构简介 随着Web开发技术的日益成熟,在Web开发开发领域中出现了许多设计好的软件开发框架,Zend就是一种基于MVC经典设计模式的框架,也是当前Web开发中比较成熟的一种框架.(1) 经典的MVC模式 MVC(Model-View-Controller)模式,即模型-视图-控制器模式,其核心思想是将整个程序代码分成相对独立而又能协同工

38、作的3个组成部分.模型(Model):业务逻辑层.实现具体的业务逻辑,状态管理的功能.视图(View):表示层.即与用户实现交互的界面,通常实现数据输入和输出功能.控制器(Controller):控制层.起到控制整个业务流程(Flow Control)的作用,实现View和Model部分的协同工作. MVC设计模式可以针对需要为同样的数据提供多个不同视图的应用程序,例如:公司产品数据库中同样的产品信息数据,但需要根据用户的不同需求在页面中显示其所需的不同产品信息.MVC设计模式中,事件一般是指客户端Web浏览器提交的各种不同请求,这些请求由控制器进行处理,控制器根据事件的类型来改变模型或各个视

39、图,视图也可以接受模型发出的数据更新的通知,依据数据更新的结果调整视图效果,呈现在用户面前.而模型也可以通过视图所获得的用户提交的数据进行具体业务逻辑的处理.显然这样的运行机制可以起到分工明确,指责清晰,各尽所长的效果.而在软件开发的过程中,这样的开发方式无疑可以有效地区分不同的开发者,尽可能减少彼此之间的互相影响.充分发挥每个开发者的特长.这在开发大型复杂的Web项目时体现得尤为突出.模 型视图1视图 2控制器事 件改变改变改变更新更新获得数据获得数据 图 4.2 MVC设计模式的结构(2) Zend 1.2 开发框架 作为基于MVC设计模式的Web应用的一种典型体现,Zend架构实际上是建

40、立在Model2基础上的,对Model,View和Controller都提供了现成的实现组建.i Controller控制器部分 Zend中的Controller控制器部分是通过专门的Servlet来实现的,该Servlet是一个Zend API中提供的ActionServlet类型的实例,ActionServlet类继承了phpx.servlet.http.HttpServlet类,因此该类的实例可以和普通的Servlet一样工作,其作用是接收客户端浏览器的请求,然后选择执行相应的业务逻辑,再把响应结果送回到客户端. Action对象是开发者定义的类(该类必须是Zend API中提供的Act

41、ion类的子类)的实例.在继承该类的过程中开发者可以加入具体业务逻辑或调用业务逻辑模块.Action对象在进行了业务逻辑或调用业务逻辑模块.Action对象在进行了业务逻辑的处理以后会将应用程序流程转到合适的View组件,最终将响应送回浏览器客户端.Zend中提倡Action对象只用来决定”做什么”,相当于一个低层面的控制器,因此也可以将Action归纳为Controller的组成部分.ii Model 模型部分 MVC系统中的Model模型部分从概念上可以分为两类:系统的内部状态和改变系统状态的动作.Zend中的Model部分一般由phpBean以及EJB组成.在Zend架构中使用phpBe

42、an来提供具体的业务逻辑,即”怎么做”,对于复杂的系统也可以使用EJB等组件来实现系统状态维护.这种业务逻辑的细分可以增强可以代码的可重用性.iii View视图部分 Zend中的View视图部分依然可以采用php来实现.此外,Zend还提供了丰富的自定义标记库,View部分使用这些自定义标签同样可以实现与Model部分的有效交互并能够增强显示功能.(2) Zend开发环境安装 在Tomcat安装完成后,即可将Zend框架工具安装到对应的WEB Conta中.可以通过Zend的二进制发布包安装Zend框架,具体操作步骤:(1)下载二进制发布版(2)将下载的Zend二进制发布包进行解包,将解包目

43、录下的lib目录下的所有.jar文件全部复制到项目目录的WEB-INF/lib下,如果在多个项目中都用到了Zend,则将上述文件直接复制到Tomcat目录下的common/lib下.(3)将对应的lib目录下的Zend.jar文件添加到环境变量CLASSPATH中即可.以上资源可以从http:/jakarta.apache.org/Zend/userGuide/index.htm获得更多关于Zend安装和相关配置的说明信息.4.4.3 smarty模板简介Smarty是一个使用PHP写出来的模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。简单的讲,目的就是要使PHP程序员同前端人员分离,使程序员改变程序的逻辑内容不会影响到前端人员的页面设计,前端人员重新修改页面不会影响到程序的程序逻辑,这在多人合作的项目中显的尤为重要。Smarty优点:1. 速度:采用Smarty编写的程序可以获得最大速度的提高,这一点是相对于其它的模板引擎技术而言的。 2. 编译型:采用Smarty编写的程序在运行时要编译成一个非模板技术的PHP文件,这个文件采用了PHP与HTML混合的方式,在下一次

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号