本篇论文目录导航:
【题目】框架模式下工作流程网站开发探究
【第一章】企业信息化框架式网站建设研究绪论
【2.1 - 2.3】利用微信企业平台建立流程网站的会知技术
【2.4】使用框架技术开发流程网站
【第三章】流程网站前台页面显示技术
【第四章】组建网站开发环境与运行环境
【5.1】流程网站设计流程核心模块
【5.2 5.3】流程网站建立流程的审批功能
【5.4 - 5.7】设计流程网站登录及注册功能
【总结/参考文献】生产企业流程网站设计与实现研究总结与参考文献
2.4 使用框架技术开发流程网站
2.4.1 PHP 框架技术。
本流程网站采用的是框架模式开发的,选用 PHP 框架模式开发网站主要基于以下方面的原因。
PHP 框架能够给程序员提供一个基本架构来开发 Web 应用程序。在 PHP 开发框架内,可以把 PHPWeb 程序开发采用类似流水线的形式进行,借助这种模式,PHP 开发框架能够有效促进软件的开发速率,节省了 PHP 开发人员的时间,可以让 PHP 开发人员花更多的时间去专注于他们真正要去做的事。同时,借助在表现层独立编程的在方式PHP 框架所创建的 Web 程序健壮性更强,程序员可以将更多的时间应用于真正有效的Web 程序开发、有效减少程序员重复代码工作。借助 PHP 框架,能够在数据库操作方式上确保正确[9].
PHP 的框架生产速度非常快,下面介绍一下国内外有代表性的知名框架。国内比较有名的框架包括 ThinkPHP 和 CanPHP 等。
1、ThinkPHP.
ThinkPHP 最早诞生于 2006 年,遵循 Apache2 开源协议发布,是一款性能优越、功能全面的轻量级 PHP 开发框架。在 ThinkPHP 框架内,有很多原创性的特点,借助相对简洁的代码就可以完成更多的功能,其核心功能主旨就是让 Web 应用开发简洁快速。
在开源社区成员的积极参与下,ThinkPHP 框架在易用性、扩展性及性能等方面得以持续地改进和优化。当前,ThinkPHP 框架能够支持 Windows、Unix、Linux 等不同服务器系统环境,支持 MySql、PgSQL 等多种数据库。2.0 版本的发布使得 ThinkPHP 达到新的阶段,新版本的 ThinkPHP 能够达到企业级和门户级的开发应用标准[10].
2、CanPHP.
CanPHP 是我国一个简洁、实用、高效的开源的 PHP 框架,它遵循遵循 apache 协议的,追寻"简单、自由、包容"的设计理念。借助 CanPHP 框架,能够简洁、快速地进行小型项目和开源系统的二次开发[11].CanPHP 框架能够全面支持 MVC 模式,能够不受限制的支持传统编程模式。基于以上特点,CanPHP 框架能够有效让初学者快速上手。同时,CanPHP 框架的采用微内核设计模式,具有很强的移植性,能够集成到系统所需的系统中。CanPHP 框架以面向应用为主,开发者在开发过程中可以不纠结于 OOP和 MVC、设计模式等,能够简单快速优质的完成项目开发[12].
国外著名框架有 Zend Framework、CakePHP 和 Yii 等。
1、Zend Framework.
Zend Framework 是 Zend 公司支持开发的完全基于 PHP5 的开源 PHP 开发框架,用于Web程序和服务的开发。Zend Framework采用MVC(Model-View-Controller)架构模式,有效分离应用程序中的各个部分,极大地方面程序的开发和维护[13].当前,ZendFramework 有很多的开发和学习人员,Zend Framework 具有 Web 2.0 风格,使得该框架拥有众多的活跃用户组成的开发小组支持扩展开发,Zend 公司也被称为"The PHPCompany".当前,Zend Framework 已经发展到 Zend Framework2,可以看着一个全新的框架,具备很多新的特性。
2、CakePHP.
CakePHP 框架运用了 ActiveRecord、MVC 等设计模数的快速开发框架,其主要目标是协助 PHP 开发人员快速、便捷地开发出稳定、健壮、灵活的 Web 应用。CakePHP框架基于与 Rubyon Rails 同样的原则而设计[14].其注重快速开发,方便地用于 RAD 的开发,同时又支持多操作系统,且不失简洁和可测量,CakePHP 框架已发展为当前最受欢迎的 PHP 开发框架之一。
3、Yii.
Yii Framework 是一个基于组件的、能够应用于开发大型 Web 应用的高性能 PHP 框架。Yii 框架基本上提供了基于 Web2.0 应用开发过程中需要的全部功能,是当前较为有效的 PHP 框架[15].Yii 采用了严格的 OOP 编写,有着完善的库引用和全面教程。正式基于以上热点,在 Web 编程中,Yii 框架将可重用性大幅度提高,可显著提升开发进度。
在如此众多优秀的框架下,综合考虑选用了 Zend Framework 框架,因为它的学习资料相对比较齐全,而且经过多年积累,技术上相对比较成熟稳定。并且它完全采用MVC 结构,面向对象方式开发。Zend Framework(简写 ZF)是由 Zend 公司支持开发,可用于开发 Web 程序和服务。
它是完全基于 PHP5 的开源 PHP 开发框架,Zend Framework 采用 MVC 架构模式来区分应用程序的不同组成部分,很大程度上方便了程序的开发及维护[16].
Zend Framework 开发 web 程序和服务的开源框架是基于 PHP 5.3 及更高版本。通过采用百分百面向对象的编程方式来实现。Zend Framework 的结构组成中,每个组件完全独立且互不依靠。较低的松耦合性可以让 PHP 开发人员独立使用组件。
Zend Technologies 作为 Zend Framework 框架开发的主要资源赞助商。除此之外,其他一些公司也做出过重大贡献,其中,谷歌、微软等公司作为合作伙伴,提供了 WebService 接口和其它供开发人员应用的技术。
活跃的 ZF 社区为 Zend Framework 框架能够交付和支持强大的开发功能提供了保障。在 ZF 社区,成员能够找到 mailing lists、IRC channels 和其它论坛。任何有关 ZF 的问题和疑惑, 在 ZF 社区中都可以得到社区其他成员的答复[17].
在 Zend Framework 框架中,组件不仅能够单独使用,还能够通过一定的形式组合起来,形成一个扩展性良好的强大功能 Web 开发框架平台。借助 Zend Framework 提供的高效、健壮的 MVC 构架,数据库连接变得相对简易,HTML 表单解析、过滤及校验等表单组件功能应用也变得简易,应用程序开发人员能够简便地使用这些简单、易用、面向对象的接口实现全部的操作功能。借助 Zend_Acl、Zend_Auth 等通用的证书存储功能,能够有效提供用户授权和认证服务。与此同时,Zend Framework 框架还有大量的客户库来简化程序的开发,任何开发人员都能够在 Zend Framework 库内寻找到适合自己应用的组件,借助相关功能能够有效减短程序员的开发时间,能够使开发人员将更多的时间投入到研发的工作当中[18].
Zend Framework 框架也是基于 PHP 所开发,能够进行 Web 应用程序、Web Service程序等开发,具有开源、高品质等特点。正是由于 PHP 独特特性,使得 Zend Framework框架具备强大的功能及良好的易用性,为网站开发提供了先进的、健壮的和安全的解决方案。Zend Framework 框架代码完全采用 PHP5 面向对象的方式编写,拥有丰富、完善的组件和良好的 Ajax 支持,基于模块化的结构设计使得其扩展性极强。同时,还提供完善的文档资料和丰富的社区学习平台。利用 Zend Framework 框架开发出来的 Web 应用具备结构灵活、可维护性高等特点。我们流程网站采用的是 Zend Framework 1.12.3 版本[19].
Bootstrap.php 是应用程序的入口文件,用于引导应用程序,完成组件注册、初始化等工作。
Library 目录下面主要存放类库。将自己编写的类库和第三方的类库放在该目录下将进行自动加载,在在进行该类操作是要需要建立独立的命名空间,通过建立子目录的形式来实现[20].
Public 是用于存放公开文件的目录,也是网站的根目录,供用户访问的 js、css 和图片等相关文件存放在该目录下。
index.php 作为应用程序的入口,主要用于建立 PHP 环境。在 index.php 中引用Bootstrap.php 来进行程序初始化的工作,并借助调用前置控制器的 dispatch()来分发相关请求。
在使用 Zend Framework 前,需要对一些文件进行配置,主要是配置虚拟主机等操作。其中虚拟主机的配置过程如下:要求:PHP 必须是 5.1.4 或以上版本;apache 服务器,并正确配置了 mod_rewrite扩展;(如果没有配置这一模块,打开 httpd.conf 配置文件,然后添加 LoadModulerewrite_module modules/mod_rewrite.so,当然了你得确保有这一模块)假设网站名为 OA.
监听端口设置。假设我们用 800 端口,在 apache 的配置文件 httpd.conf 中打开这一监听端口,添加 Listen 800 就 ok 了。如果这个端口被多个虚拟主机共享,那么你只能在你的本机上正常访问这个网站了,在局域网其他的机子上则没法正常访问你的网站,怎么办呢?换个监听端口就好了。2.4.2 MVC 框架技术MVC(Model View Controller)即模型-视图-控制器。其中"模型"指的是在应用程序中进行完成程序逻辑处理、数据逻辑处理的逻辑架构,一般情况下在逻辑架构中主要完成数据库中数据的存取等一些最基本的功能。"视图"在应用程序中用于处理前台数据中显示的部分,一般情况下,视图依据模型数据而创建。"控制器"在应用程序中用于处理用户交互数据的部分,主要负责从"视图"中读取交互数据、控制用户输入信息、向模型发送数据等[21].MVC 是一种软件设计的典范,在 MVC 框架中采用将逻辑、数据、界面显示分别独立分离的形式组织代码,一般将业务逻辑集成到单个部件当中,这样不仅可以不需要重新编写业务逻辑还实现了个性化设计界面及用户交互。一般情况下,MVC 框架主要用于在图形化用户界面中完成映射传统的输入、处理和输出功能。
MVC 框架模式还提供了对前台页面、CSS 样式以及 JavaScript 脚本语言的基本控制。
MVC 的分层结构能够简化复杂应用程序的开发,借助该种分层结构,开发人员能够在一个时间段内专门关注其中某一方面。这样您就可以在不依赖业务逻辑的情况下专注于视图设计。并且也让应用程序的测试更加容易。MVC 的分层结构可以让不同的开发人员可同时开发显示界面、后台控制器逻辑和业务逻辑。
MVC 是一个框架模式。它是由模型、视图、控制器三个核心部件组成。它巧妙的使应用程序的输入、处理和输出分开。这样即能够独立地进行自己任务的处理。JSP +servlet + javabean 模式是最典型的 MVC 形式[22].
1、视图(View)。
HTML 页面在如今主流网页应用程序中占有非常大的分量,并且不时地出现一些新技术,如集成 Flash 技术的 XHTML、XML/XSL、WML 等标识语言及 Web services 等。
但对以前的 Web 应用程序来说,视图就是由 HTML 元素组成的界面。采用 MVC 结构的最大优点就是 MVC 可以为应用程序进行不同视图界面的处理。然而在界面中真正的处理过程实际并没有发生,实际发生的是数据采用联机存储和雇员列表形式等在视图中都只是一种输出数据的形式,且该输出数据形式允许用户进行操纵[23].
2、模型(Model)。
模型作为 MVC 框架中最底层的结构。在这三个部件中,模型拥有最多的处理任务。
例如它以对数据库进行增加、删除、修改、查找等一系列任务,并且模型会返回相对独立数据,所返回的数据与模型之间没有特殊数据格式的关系。一般情况下,同一个模型可以给多个视图提供数据服务,写好的模型代码可以在多个视图中重复被利用,因此,采用该模式进行代码开发,可以有效地减少代码重复性的工作,提高开发效率。
3、控制器(Control)。
控制器在 MVC 框架中处于核心地位。控制器先接受前台输入过来的数据,再进行调用模型和视图来共同完成用户端的工作请求,即在用户点击 Web 页面中的超链接、发送 HTML 表单的过程中,控制器的自身不会有任何数据的输出,对数据不做任何的处理,而是接收前台发送过来的相关请求,然后判断需要调用的构件来完成相应的业务逻辑处理,最后调用所对应的视图页面并将其反馈的数据给用户的界面中进行显示[24].
MVC 框架具有耦合性低且重用性高等优点,不管桌面浏览器视图还是者移动设备的浏览器视图都能共享一个模型,使用者即可以通过 PC 端也可通过移动设备来完成操作,虽然前台界面的显示方式不尽相同,但在后台服务器进行前台数据处理是相同的。
由于在模型中对数据结构不进行严格约束,所以在同一构件的数据可以被不同的界面来应用[25].大部分的网页数据是用 HTML 语言表示的,但也有不少用 WAP 来表示,相关的指令即是通过改变视图界面的方式来用于实现的,在这一过程中,控制器、模型不需要做任何的改变,数据和业务的规则在界面显示过程中已经分开进行,所以能够实现最大化的代码重复利用。在模型中也有数据持久性处理及状态管理的功能。
MVC 框架模式可以使开发及维护用户接口的技术含量降低,从而达到软件开发生命周期低成本部署快等优势,借助 MVC 模式开发的网站系统开发时间大大缩短,系统开发人员能够将精力和时间更多地应用于业务逻辑和表现形式上[5].
视图层和业务逻辑层的分离可以让网站维护人员更易于管理和修改,有利软件工程化管理[5].MVC 框架也有不少缺点。因为定义比较模糊,要完全理解它的运行机制比较困难。
由于 MVC 框架内部运行机制相对负载,在应用 MVC 框架之前一般需要进行完善的规划,这就要开发人员下功夫花大量时间进行思考和设计。由于视图、控制器与模型之间要求严格区分,这就给调试程序的人员带来了诸多困难。程序中的每一个模块所包含的每一个功能在使用之前都要经过严格的测试才能够使用。MVC 框架模式并不适合中小规模的应用程序开发。对于以后不会增加网站规模的中小型网站使用 MVC 框架,会增加网站系统结构的复杂性,降低程序的运行效率,还有可能产生过多的重复操作。
虽然视图与控制器是相互分离,但却是不可分割的,光有视图没有控制器,视图会读取不到后台传过来的数据,光有控制器没有视图,数据都无法友好显示。这样就严重影响了他们的独立性。还有对变化频率不是很大的数据进行不必要的频繁操作,也将大大降低程序的性能。然而改造这些工具用来满足 MVC 框架的需要代价却是非常高的,并且会使 MVC 框架使用变得不稳定可靠。
导购网站是给消费者提供网络购物指导的服务类网站,其职责是解决消费者心理的种种疑虑,引导帮助消费者省时省力的搜索到理想的商品并实现购买,甚至挖掘出消费者潜在的购买欲望。导购网站设计应考衡快速更新的庞大数据及大量并发访问的场景,提出相应的解决...
第1章绪论1.1项目背景与意义。作为一家生产大型非标类工程机械产品的制造企业,上海电力环保设备总厂有限公司的产品具有单件小批量,生产周期长等性质。再加上现场安装和售后服务的交机流程不可控的因素使得产品订单的成本难以管控。随着本公司项目...
基于RBAC模型的权限控制等技术分析, 及系统功能和非功能性需求分析、系统实现框架和主要功能设计几个方面, 阐述了国家气象业务内网后台管理系统的设计与实现。...
0、引言中共中央、国务院《关于深化教学改革,全面推进素质教育的决定》中指出:高等教育要重视培养大学生的创新能力,实践能力和创业精神,普遍提高大学生的人文素质和科学素质。高等学校大学生创新和创业教育的重要性日益凸显。但是,仅仅依靠传统课堂...
网站的设计与开发是基于开源集成SSH框架实现的手机资讯交流和销售的平台, 包含手机个人代购销售、手机BBS交流论坛等主要功能。该网站进过测试和试运行, 功能满足一定的实用价值。...
SSH框架运用于人们生活中的很多地方,在当代各类软件框架中占有主导地位。在实际运用中将Struts、Spring与Hibernate三个框架进行整合,可以解决Web数据量过大造成的服务器压力过大、网络流量激增的问题。...
通过互联网平台,运用SSM框架来建立摄影网站,可以实现某一关注方面的交流互动,提升社会活动和娱乐的多样性。...
1、人口信息微网站的研究背景和意义在计划经济时代,我国主要依靠户籍制度来管理人口.在计划经济人户合一的情况下,户籍制度为人口的管理带来了便捷。但在新的市场经济形势下,随着我国社会经济的发展,城市中出现了大量的流动人口与境外人员,这就造成了人...
摘要随着网络技术发展与普及应用,人类社会的信息化发展到一个空前的高度。信息化技术已经渗透到我们生活的各个角落,不论是生产、生活,还是社交往来,各种各样的信息化、数字化发展使得人们的生活越来越便捷丰富。在信息化发展的洪流中,企业、政府部门...
自国家气象业务内网后台管理系统建成上线以来, 实现了资料元数据管理在线配置等数据服务管理功能, 快速实现了业务信息和业务文档的在线发布、更新、删除等操作, 并实现用户信息的在线管理功能。...