JSP技术简介

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1章JSP技术简介

JSP(Java Server Pages)技术是由Sun公司发布的用于开发动态Web应用的一项技术。它以其简单易学、跨平台的特性,在众多动态Web应用程序设计语言中异军突起,在短短几年中已经形成了一套完整的规范,并广泛地应用于电子商务等各个领域中。在国内,JSP 现在也得到了比较广泛的重视,得到了很好的发展,越来越多的动态网站开始采用JSP技术。本章就对JSP及其相关技术进行简单的介绍。

1.1 认识HTTP协议

HTTP协议(Hypertext Transfer Protocol,超文本传送协议)是WWW服务器使用的主要协议,对HTTP协议细节的基本理解是编写JSP或Java小程序的开发人员所必需的。因此在学习JSP技术之前有必要更加仔细地研究一下HTTP消息的格式(这里的讨论源自HTTP/1.1协议规范。参见规范2616,网址为/rfc/rfc2616.txt)。HTTP 协议的关键部分有HTTP请求和HTTP响应,以及客户端Web程序设计的一些基础知识,在第4章4.4节将会具体介绍。

1.2 客户端Web程序设计介绍

Web浏览器现已成为深受大多数用户喜爱的用户界面。HTML语言提供了丰富的控件,第三方厂商提供了Visual Basic编写的数百个额外的控件,这些都使得Web浏览器独具特色。

虽然Web浏览器与传统的GUI界面有一定的差距,但它提供了一种独立而又简单的方法来访问分布式资源,尤其是Internet资源。而且越来越多的客户端Web程序扩展技术变得更加成熟,出现了包括CSS、JavaScript、VBScript、动态HTML、Java1.1.Applet应用程序等技术在内的客户端Web程序设计技术,它们的相互结合使得Web程序更加迷人。下面简单介绍几种常用的客户端Web程序设计技术的特点。本书假定读者对这些技术都有一定的了解,不对这些技术作详细介绍。

1.2.1 CSS

CSS(Cascading Style Sheets)称为层叠样式表,是动态HTML技术的一个部分,但可以和HTML结合使用。CSS利用各式的范本样式来辅助HTML,其简洁的语法可以容易地控制HTML标记,而且最大的特点是可以将内容(HTML)与格式分开处理(以.CSS为后缀存储成一个独立的文件)。

1.2.2 JavaScript

JavaScript是用于浏览器的第一种具有通用目的、动态的客户端脚本语言。Netscape于1995年首先提出了JavaScript,但当时将其称为LiveScript。后来Netscape迅速地将LiveScript 改名为JavaScript,Java的开发商Sun与他们在同一年发表了一项声明。声明中指出Java 和JavaScript将互相补充,但它们是截然不同的技术,这样才打消了很多人对这两项技术的错误理解。

JavaScript为创建用户界面控件提供了一种脚本语言。事实上,JavaScript在浏览器中插入了代码逻辑。它可以支持这样的效果:当光标在Web页的某个位置移动时验证用户输入或者变换图像。

Microsoft也编写出了自己的JavaScript版本并将其称为JScript。Microsoft和Netscape 都支持一种围绕JavaScript和JScript的核心特性并由(European Computer Manufacturers Association,ECMA)标准组织控制的脚本语言标准。ECMA将其脚本语言命名为ECMAScript。

1.2.3 VBScript

在发布JScript的同时,Microsoft还开发了VBScript作为其Visual Basic程序设计语言的解释子集。Microsoft专门开发了VBScript,用于在Microsoft的Internet Explorer上支持Active X控件。

Active X是Microsoft拥有的面向对象的软件组件模型。像JavaScript一样,VBScript 需要在浏览器中存在解释器支持。Microsoft将VBScript定位于JavaScript的一种变化形式,以供那些已经掌握了Visual Basic的程序员使用。只有Microsoft的浏览器和Microsoft的Web服务器Internet信息服务(Internet Information Service)才支持VBScript。

1.2.4 动态HTML

动态HTML(DHTML)支持JavaScript和Java等多项技术,但其最引人注目的特性是层叠样式表(Cascading Style Sheets,CSS)。层叠样式表可以帮助页面开发人员将显示元素从内容元素中分离出来。例如,与图书和杂志的页面布局相似的纯粹像素布局就需要级联样式表。层叠样式表还支持颜色、字体规范、显示图层和页边空白这样的页面元素

特征。

动态HTML(DHTML)文档对象模型(Document Object Model,DOM)使网页制作者可以直接地以可编程的方式访问Web文档上每个独立的部分,而不论被访问的是元素还是容器。这种访问方式包括了事件模型。事件模型令浏览器可对用户输入作出反应,通过执行脚本,无须从服务器下载一个新的页面就可以根据用户输入显示新的内容。动态HTML 文档对象模型(DHTML DOM)以一种便捷的方式为广大普通网页制作者提供了丰富的网页交互性。

1.2.5 Java Applet(Java小应用程序)

Java Applet就是用Java语言编写的一些小应用程序,它们可以直接嵌入到网页中,并能够产生特殊的效果。包含Applet的网页被称为Java-Powered页,可以称其为Java支持的网页。

当用户访问这样的网页时,Applet被下载到用户的计算机上执行,但前提是用户使用的是支持Java的网络浏览器。由于Applet是在用户的计算机上执行的,因此它的执行速度不受网络带宽或者Modem存取速度的限制,用户可以更好地欣赏网页上Applet产生的多媒体效果。

在Java Applet中,可以实现图形绘制、字体和颜色控制、动画和声音的插入、人机交互及网络交流等功能。Applet还提供了名为抽象窗口工具箱(Abstract Window Toolkit,AWT)的窗口环境开发工具,但AWT的设计是存在缺陷的,取而代之的Swing技术为Java GUI 编程提供了强大丰富的API和灵活的结构设计,并在AWT基础上,提供了替代AWT重量组件的轻量组件。它们利用用户计算机的GUI元素,可以建立标准的图形用户界面,如窗口、按钮、滚动条等。目前,在网络上有非常多的Applet范例来生动地展现这些功能,读者可以去查阅相应的网页以观看它们的效果。

1.2.6 浏览器技术的作用与局限性

所有客户端技术都向Web浏览器添加了功能并帮助Web应用程序变得更加直观、更易于使用以及更加有趣。不过它们其中没有任何一项技术传递了服务。对于改进用户看到和请求这种服务的方式,它们的作用是有限的。

Java小程序是最全面和最强大的客户端技术,它通过使用复杂的缓存技术、流技术或灵活的编程方法,Java小程序看上去很像标准的桌面应用程序。不过,低速的网络连接或中断的Internet服务都会使得它起不到预期的效果。

客户端扩展添加到浏览器的功能甚至会产生负面效果。近些年的趋势是已经将功能从客户移到了服务器。人们将这描述为从胖客户(thick client)转移到瘦客户(thin client)模式。瘦客户将应用程序用户界面的显示从显示的控制逻辑中分离了出来。这种从胖客户的转移提供了许多优点。下面列出了其中一些重要的优点:

集中的应用程序部署:开发人员可以将应用程序或应用程序的更新版本部署到一个

相关文档
最新文档