作为一名资深的 Java 技术专家和 Enhydra 支持者本文作者强烈建议开发人员在选择 Web 应用程序编程语言时使用其他可以替代 JavaServer Pages (JSP) servlets 的技术JSP 技术是Sun 的JEE 平台和编程模型的一部分用于解决将单调的内容转换为外观优美的表示层时遇到的困难事实上并非所有的Web开发人员都对JSP 技术很满意由于 Sun 技术出现了很多不同的版本您可以从众多表示技术中选择一种替代技术本文将深入查看JSP代码并介绍一些有吸引力的替代选择
表示技术专门用于将单调粗糙的Web 内容转换成带有漂亮的表示层的内容JavaServer Pages (JSP) 技术是 Sun 的表示模型并且是 JEE 平台的一部分它获得了极大的关注使用 JSP 技术有优点也有缺点Web 开发人员应该了解这些优缺点并且知道还有其他代替技术实际上现在有很多可供选择的表示技术本文先介绍表示技术要解决哪些问题然后考察 JSP 模型特有的优缺点最后将介绍一些其他表示技术它们可以代替 Sun 表示技术
历史背景
在深入介绍表示技术之前有必要了解一下该技术产生的时代背景就在 年前瘦客户机还是个新鲜事物我们仍然处于桌面应用程序的时代使用功能有限的 微处理器和现在看来不屑一顾的 寸显示器时代变了!现在我的台式机只需要运行一个 Web 浏览器服务器由 SunIBMHPCompaq 提供计算业务逻辑和内容则又由其他公司提供那么显示器呢?现在我们使用的是 寸到 寸不等等离子宽屏显示器这样我们就可以看到复杂的 HTML 表示它们充当这些强大的应用程序的前端以前的单调界面已经无法满足需要我们现在需要使用华丽的图形可以移动的图像色彩协调的表示并且要求它能够加快呈现速度
前提条件
如今在羽毛渐丰的 Windows 应用程序经过十年的发展之后我们还处在表示模式的巨大转型之中Visual Basic 和 C 程序员发现他们仍然在使用后端系统或单调的 Windows 应用程序或是在工具箱中加入了一种具有 Web 能力的语言例如 Java 语言如果一个应用程序无法支持至少 到 种 ML 式语言(例如 HTMLXML 和 WML)即使不是彻底失败也会被认为是很糟糕的当然这就表示我们非常重视能轻松开发 Web 表示层的能力
事实证明使用新的 Internet 以及所有可用的语言(JavaCPerlPascal 和 Ada 等)并不像我们希望的那样简单在后端系统使用编程语言并利用它们生成适合客户机的标记语言时出现了大量问题随着浏览器端的选择越来越多(例如 DHTML 和 JavaScript 编码)Web 领域迫切需要图形设计知识以及可以使用标准 HTML 创建复杂界面的工具但开发应用程序前端的能力无法跟上这些需求的步伐此时表示技术 应运而生
表示技术的专门任务是将内容(即没有包含表示细节的数据)转换为表示也就是您在手机PalmPilot 或 Web 浏览器看到的各种用户界面这些表示技术要解决哪些问题?让我们来了解一下
分离和集成
表示技术的主要目的是允许分离内容和表示换而言之业务逻辑单元(假设 C 或 Java 等编程语言)不需要使用特定于表示的方式生成数据数据或内容按照原始格式返回没有进行格式化表示技术随后对内容应用格式化或进行表示最终的结果是各种数据被图形格式色彩和徽标所包围
查看清单 和清单 中的示例了解一下原始内容和应用了表示技术的内容之间的差异
清单展示了原始的内容全部都是数据可以按照任何方式使用
Russell Crowe
Tom Hanks
Meg Ryan
Mary Stuart Masterson
Alec Baldwin
Ashley Judd
Keanu Reeves
[] [] [] [] [] []