JSP是建立在Java;servlets模型之上的表达层技术,它使编写HTML变得更简单。像SSJS一样,它也允许你将静态HTML内容与服务器端脚本混合起来生成动态输出。JSP把Java作为默认的脚本语言,然而,就像ASP可以使用其他语言(如javascript和VBScript)一样,JSP规范也允许使用其他语言。尽管JSP和Java比那些基于简单语言的脚本平台(如javascript和VBScript)具有更好的兼容性和坚固性,但同时Java的学习难度也比简单的脚本语言要大。;
为了兼顾两者的优点――一个健壮的web应用平台和一种简单易用的语言工具――JSP提供了大量的服务器端标签(Tag),这使得开发者可以在不写Java代码的情况下完成大多数动态内容操作。那些只熟悉编写脚本的开发人员,甚至仅仅是HTML设计者,就可以使用JSP标签生成简单的输出而不必学习Java。高级的脚本编写者或Java程序员也可以使用这些标签,如果要在JSP页面中完成更高级的操作,他们可以使用完整的Java语言。;
Page过时了,Component妙极了;
要理解JSP怎样联合无限的力量来轻而易举地实现魔术般的效果,你必须首先了解“组件为中心的网页开发和“页面为中心的网页开发的区别。;
SSJS和ASP都是在几年前推出的,那时网络还很年轻,没有人知道除了把所有的商务、数据和表达逻辑统统堆进原始网页中之外还有什么更好的解决方法。这种以页面为中心的模型容易学习并且得到相当快速的发展。然而,随着时间的推移,人们认识到这种方法不适于构建大型的、可升级的web应用程序。在脚本环境中书写的表达逻辑被锁在页面内,只有通过剪切和粘贴才能被重用。表达逻辑通常和商务及数据逻辑混在一起,这使得当程序员试图改变一个应用程序的外观而不想破坏与之紧密结合的商务逻辑时,应用程序的维护就像在蛋壳上走路一样困难。其实在企业中,可重用组件的应用早已经很成熟,没有人愿意为他们的应用程序重写那些逻辑。HTML和图形设计师把他们的设计的实施工作交给了web编写者,使他们不得不加倍工作――常常是手工编写,因为没有合适的工具可以把服务器端脚本与HTML内容结合起来。简而言之,随着web应用程序的复杂性不断提升,以页面为中心的开发方式的局限性变得明显起来。;
与此同时,人们一直在寻找建立web应用程序的更好方法,组件在客户机-服务器领域风行起来。JavaBeans和ActiveX被“快速应用程序开发(RAD)工具发行商推广给Java和Windows应用程序开发者用来快速开发复杂的程序。这些技术使某领域内的专家可以为本领域内的垂直应用编写组件,而开发者可以直接拿来使用而不必掌握这一领域的专门技术。比如,编制旅鼠交配习性图表的Java程序员不需要了解任何关于旅鼠的知识,他只要调用;LemmingsInLove;JavaBeans(JavaBeans是一种基于Java的组件)就可得到相应的领域专门信息,他只需关注如何使软件更易于使用。出现一种把组件为中心的程序设计方法带到服务器端web应用领域的技术只是时间的问题。;
作为一种以组件为中心的开发平台,JSP出现了。它以JavaBeans和Enterprise;JavaBeans(EJB)组件包含商务和数据逻辑的模型为基础,提供大量标签和一个脚本平台用来在HTML页中显示由JavaBeans产生或回送的内容。由于JSP的以组件为中心的性质,他可以被Java和非Java开发者同样使用。非Java开发者可以通过JSP的标签(Tags)来使用高级Java开发者创建的JavaBeans。Java开发者不仅可以创建和使用JavaBeans,还能在JSP页中使用Java语言来更精密地控制基于底层JavaBeans的表达逻辑。;;
标签: