Web 2.0 用户界面技术
假设您需要创建一个适合 Web 2.0 环境的新应用程序。一部分用户非常喜欢基于 HTML 的用户界面,而其他用户希望他们使用的每个应用程序都表现得像 Excel 那样的桌面应用程序。您的老板要求有工作效率高的用户体验,但是 CIO 不允许开发需要用户手工部署的任何东西。您知道 HTML 无法达到这样的目标,但是怎么做才能符合要求呢?
这里要讨论一系列 Web 2.0 用户界面技术,让您构建的应用程序具有比浏览器更好的用户体验。而且,可以像任何其他 Java 2 Enterprise Edition(Java EE)应用程序一样集中地部署和管理它们。在用户界面方面,当今的企业应用程序开发人员受到来自用户和运营部门的双重压力。一方面,代表用户的业务部门希望应用程序具有丰富的用户界面,能够最大限度地提高用户的工作效率。他们希望所有应用程序都表现得像 Microsoft 的 Excel 或者其他客户机应用程序一样。希望应用程序能够提供即时响应。此外,若有相同数据的多个视图(例如,一个表格视图和一个图形视图),那么还希望在其中一个视图中进行修改时,其他视图能够立即反映出这一修改。另一方面,IT 运营部门喜欢纯粹的基于服务器的交付模型。尽管他们知道 HTML 用户体验不如基于本机操作系统(OS)的用户界面那么健壮,但他们认为为了改进用户体验,安装、配置和管理客户机代码的成本太高了。
IT 组织中的许多人都亲身体验过 20 世纪 90 年代的客户机/服务器部署模型,不愿意再重复那样的经历。实际上,如果有客户机组件存在,许多 Java 2 Enterprise Edition(Java EE)应用程序可能不会构建起来,因为成本对于应用程序的业务目标来说太高了。服务器交付的部署模型为 IT 组织提供了低成本高效率的部署方式,这在 90 年代是 IT 组织的梦想。大多数组织都意识到了服务器部署的 Java EE 应用程序的经济优势,因此根本不会考虑部署那些必须在各个客户机上进行安装的代码, 除非是不得已。那么,企业开发人员应该怎么做呢?用户不希望由于几秒的服务器响应时间而降低工作效率,而 IT 部门又不同意采用在客户机上部署和管理代码的老方法。如何能够满足这些表面上相互冲突的需求,让双方都满意呢?幸运的是,现有的技术使您能够提供比浏览器更好的用户体验,同时不必在客户机上手工安装代码。用这些技术构建的应用程序有时候被称为 Web 2.0 应用程序。在 Tim O'Reilly 的文章 “What Is Web 2.0? Design Patterns and Business Models for the Next Generation of Software”中,他指出:我们正在进入一个前所未有的用户界面革新时代,Web 开发人员最终能够构建出与本地 PC 应用程序同样丰富的 Web 应用程序。
Web 2.0 应用程序同时提供了两种环境的优点:低成本高效率的基于服务器的部署模型,以及几乎可以与客户机应用程序媲美的用户体验。对于为当今的 Java EE 应用程序提供丰富的用户体验,有几种技术可供选择:
· Flex 和 OpenLaszlo
· IBM® Workplace™ Managed Client 和 IBM Lotus® Expeditor
· Faces Client Components
· Ajax
· HTML
Flex 和 OpenLaszlo 是极其相似的声明式方法,用来为 Java EE 应用程序创建比浏览器更好的用户体验。Flex 由 Adobe/Macromedia 提供,而 OpenLaszlo 是最初Laszlo Systems Inc 创建的开放源码软件。在这两种环境中,都使用独特的基于 X M L 的语法来布置和创建用户界面。
例如,为了在 Flex 中使用一个按钮,可以用 MXML(Multimedia XML)编写以下代码: < a name="code-text" > < mx: Button label="Submit" </mx:Button> </a> 而对于OpenLaszlo,可以用 LZX(LasZlo XML)编写以下代码:<aname="code-text"><button<Submit</ button></a>
为了允许不同的 UI 元素与服务器进行交互和通信,可以用 Action Script(Flex)或者是 JavaScript(OpenLaszlo)编写脚本。
尽管这两种技术有许多相似性,但关键的一点差异是它们需要运行时基础设施。对于需要与服务器交换数据的客户机,Flex 会需要一个 Flex Data Services Server,它会与 Flash Player 插件中运行的客户机进行通信。在本质上,这个服务器为客户机和应用程序的服务器组件之间的所有通信和数据交换提供中介。
OpenLaszlo 的最新版本做了一些运行时改进,使它对于开发人员更具吸引力。一项改进是版本 3 引入了一种 SOLO 开发模式,使得在某些部署配置中不再需要 Laszlo Presentation Server。另一个主要的改进是客户机运行时环境。最新版本(Open Lazlo 4)正处于 beta 测试阶段,它使基于 Laszlo 的应用程序能够不带 Adobe/Macromedia Flash Player 插件运行。许多公司不愿意被限制于某种专有的插件(比如 Flash Player),他们会欢迎这一改进。
如何判断哪种产品更适合您的组织?Flex 的主要优点是可以从 Adobe/Macromedia 获得充分的产品支持,但是要为 Flex Data Services Server 的许可证付费。对于某一些公司来说,付出许可证费用来换取得到充分支持的产品是值得的。Adobe Flex 2 应用程序也需要 Flash Player plug-in V9。尽管 Flex 可以创建丰富的用户体验,但是某些公司不愿意承受费用和插件限制。
Open Laszlo 技术最初是作为商业产品发布的,但是在 2004 年 Laszlo Systems 开放了这种技术的源码,采用了 Common Public License(V1.0)许可方式。Laszlo Systems 提供支持订阅,而且因为它是一个开放源码项目,您可以选择使用免费资源支持它。对于 Open Laszlo,费用不是大问题, 但是有些组织的公司策略不允许使用开放源码软件,所以可能不能选用 OpenLaszlo。
1 Web服务器端的动态网页技术
【篇名】Web服务器端的动态网页技术
【作者】杨德华;
【单位】同济大学经济与管理学院;上海;
【刊名】计算机应用研究, APPLICATION RESEARCH OF COMPUTERS, 编辑部邮箱 1999年 10期
期刊荣誉:中文核心期刊要目总览 ASPT来源刊 中国期刊方阵 CJFD收录刊
【中文关键词】动态网页技术;Servlet ;JSP ;GSP服务器端Java程序;
【中文摘要】WEB的动态网页已经成为WEB站点信息资源组织、共享、发布与信息交互的主要技术。本文深入地探讨WEB服务器端的动态网页的实现技术及其应用,并结合当前Java环境下动态网页的设计技术与处理软件的新进展,以实例阐述了WEB月民务器端动态网页系统的技术实现与系统建立.
【DOI】CNKI:ISSN:1001-3695.0.1999-10-015
2 基于 B/S模式和JSP技术的网络流量动态监控系统
【篇名】基于 B/S模式和JSP技术的网络流量动态监控系统
【作者】黄美莹; 郑纬民; 汪东升; 杨广文;
【单位】清华大学计算机系高性能所;
【刊名】计算机工程与应用, Computer Engineering and Applications, 编辑部邮箱 2002年 01期
期刊荣誉:中文核心期刊要目总览 ASPT来源刊 中国期刊方阵 CJFD收录刊
【中文关键词】浏览器/服务器;网络流量;动态监控;JSP;
【中文摘要】网络流量监控是进行网络管理的一种手段,可以通过监控对网络资源的运行效率和配置的合理性进行全面了解。论文基于 B/S 模式和 JSP 技术,论述了一个网络流量动态监控系统的设计与实现技术。该系统具有交互性和实时性好、数据库自动维护、不影响网络运行等特点.
【文章编号】1002-8331-(2002)01-0144-03
3 J2EE设计模式的研究与应用
【篇名】J2EE设计模式的研究与应用
【作者】许文雨;申晓龙;谭献海;
【单位】西南交通大学,四川成都;
【刊名】成都信息工程学院学报 第20卷第4期2005年8月
期刊荣誉:ASPT来源刊 CJFD收录刊
【中文关键词】DAO;工厂;值对象;
【中文摘要】讨论了DAO 、工厂方法、抽象工厂和值对象等几个J2EE 模式的用途及特点,然后介绍了学生及课程信息管理系统的设计与实现,并根据系统设计框架和类图说明了这些模式在具体实现过程中的作用,最后总结了该设计优越性及不足之处.
【文章编号】1671-1742(2005)04-0402-05
4 基于C/S和B/S模式的远程销售信息管理系统的设计与实现
【篇名】基于C/S和B/S模式的远程销售信息管理系统的设计与实现
【作者】周庆;甘仞初;尹秋菊;车海莺;
【单位】北京理工大学经济与管理学院,北京;
【中文关键词】Client/Server;Browser/Server;远程销售信息管理;Web;
【中文摘要】以以陕西东盛医药销售信息管理系统开发为背景,阐述系统开发过程;总结运用Client/Server两种计算模式实现Internet和Intranet相结合的技术方法,以及实施医药销售信息网络化管理的经验.
【文章编号】1001-3695(2002)05-0097-04
5 三层结构及其在数据库系统中的应用
【篇名】三层结构及其在数据库系统中的应用
【作者】许良凤; 崔向东;
【单位】合肥工业大学计算机与信息学院通信系; 安徽电信规划设计院; 安徽合肥;
【刊名】安徽工程科技学院学报 , Journal of Anhui Institute of Mechanical and Electrical Engineering, 编辑部邮箱 2002年 03期
期刊荣誉:ASPT来源刊 CJFD收录刊
【中文关键词】中间件;客户/服务器模式;应用服务器;
【中文摘要】介绍了三层结构的概念及其应用,对比二层结构客户/服务器模式与三层结构客户/服务器模式的不同,阐述了采用中间件技术的三层结构客户/服务器模式在当前企业级应用中的优势.并根据中间件在系统中所起的作用和采用的技术,详细地介绍了其五种类型和各自特点.
【DOI】CNKI:ISSN:1007-5240.0.2002-03-009
6 Dreamweaver8.0中文版完全自学手册
【篇名】:Dreamweaver8.0中文版完全自学手册.[M]
【作者】:龙马工作室
【出处】:人民邮电出版社, 北京.2006
【摘要】:本书从网页制作的基础知识入手,详细介绍了如何使用Dreamweaver设计和制作网站与网页,内容包括各种网页元素的设计与制作,静态动态网站的实现,网站的管理和维护等。
7 数据库系统概论
【书名】数据库系统概论
【作者】萨师煊、王珊
【出版单位】高等教育出版社
【关键词】SQL语言; 数据库设计;数据库维护;
【摘要】本书内容包括:数据库模型、数据库系统结构、关系数据库系统、SQL语言、复杂数据理论、数据库维护、数据库设计、关系数据库管理系统、数据库技术新进展、面向对象数据库系统、分布式数据库系统、并行数据库系统等。
【ISBN】7-04-007494-X
8 软件工程
【书名】软件工程
【作者】齐治昌等
【出版单位】高等教育出版社,2005
【关键字】软件开发;技术;设计
【摘要】本书主要讲述了软件工程的基本概念,软件开发模型,开发过程管理和质量控制,软件开发设计过程和一般性技术。从而可以使读者更进一步的理解并掌握软件开发的流程。
9数据库系统概论
【书名】数据库系统概论
【作者】萨师煊、王珊
【出版单位】高等教育出版社
【关键词】SQL语言; 数据库设计;数据库维护;
【摘要】本书内容包括:数据库模型、数据库系统结构、关系数据库系统、SQL语言、复杂数据理论、数据库维护、数据库设计、关系数据库管理系统、数据库技术新进展、面向对象数据库系统、分布式数据库系统、并行数据库系统等。
【ISBN】7-04-007494-X
10 基于J2EE的物流信息管理系统的设计与实现
【篇名】基于J2EE的物流信息管理系统的设计与实现
【作者】王维强;曲志斌;
【单位】武汉科技大学城建学院,湖北武汉;
【刊名】武汉科技大学学报(自然科学版) , Journal of WuhanUni.of Sci.&Tech. (Natural Sciences Edition), 编辑部邮箱 2006年 2月第29卷 第1期
期刊荣誉:ASPT来源刊 CJFD收录刊
【中文关键词】J2EE ; EJB ; 管理信息系统; 物流信息管理系统;
【中文摘要】物流信息管理系统(L IMS)是一个基于网络的自动化信息系统。分析了J2EE 企业平台框架上应用多层结构模型,结合某信息管理系统中基本信息管理模块的功能设计,详细分析了该系统在J2EE 平台上多层分布式结构的实现过程,为相关系统的开发和研究提供了范例.
【文章编号】1672-3090(2006)01-0095-03