
2.1 JSP程序概述
JSP程序遵循Java的语法规则,是HTML标记与Java语言两者的融合,在网站的页面中按照语法规则嵌入动态代码,就构成了JSP程序。
2.1.1 【案例2-1】JSP程序示例
JSP编程其实很简单,JSP的功能十分强大,如果有ASP语言的基础,将可以轻松掌握JSP编程。首先看一个简单的JSP程序文件,以此引例窥一斑而见全豹。这是一个最简单的JSP程序,其操作步骤如下。
1)启动Eclipse开发环境,新建工程char02,在工程char02里新建JSP文件exam2-1.jsp
2)在自动生成的代码中输入代码,如图2-1所示。

图2-1 输入代码示例
out.println("JSP的世界很精彩,美好的明天等你来!");
3)为了能够显示汉字,需要将默认的字符集修改为UTF-8,如图2-1中方框所示
4)运行程序,运行结果如图2-2所示。

图2-2 JSP示例程序运行结果
2.1.2 JSP程序构成
网页的组成通常包括两部分,一是由HTML标记语言组成的静态部分,二是由编程语言编写的动态部分。JSP程序也由静态与动态两部分组成,静态部分由HTML代码组成,一般由Dreamweaver等工具自动生成;动态部分则由JSP程序片组成。
1.静态部分
JSP的静态部分,即HTML代码部分,也称为JSP页面的模板,用来显示页面元素,如果使用Dreamweaver环境开发JSP程序,这部分代码将自动生成。
2.动态部分
JSP程序的动态部分由Java程序及其相关元素组成,这部分与HTML代码混合在同一个网页文件中,通常将JSP网页文件中的Java程序部分统称为程序片,具体包括以下几项内容。
1)脚本元素(Scriptlet)。在JSP程序的代码中,大部分都是由脚本小程序组成的,所谓脚本小程序,就是程序中直接包含了Java代码。在JSP中脚本元素共分为3种。
<%%>:定义局部变量。
<%!%>:定义全局变量。
<%=%>:表达式输出,专门输出变量或一个具体值。
【案例2-2】JSP程序片示例。
在工程char02里新建JSP文件exam2-1.jsp,在自动生成的代码中录入如下代码,程序运行结果如图2-3所示。


图2-3 从1加到100之和运行结果
2)指令元素。JSP中有3种指令元素,分别是page页面指令、include包含指令和taglib标签指令。
3)动作元素。JSP中定义了一系列的标准动作元素,它们用JSP为前缀,包括<JSP:include>、<JSP:forward>、<JSP:param>、<JSP:plugin>、<JSP:useBean>、<JSP:getProperty><JSP:setProperty>、<JSP:fallback>、<JSP:params>、<JSP:attribute>、<JSP:body>、<JSP:invoke><JSP:doBody>、<JSP:element>、<JSP:text>和<JSP:output>等。
4)内置对象。JSP将最常用的功能以对象的形式提供给编程者,极大地方便了程序员开发应用程序,简化了程序的编写工作。JSP共有9个内置对象,应用这些内置对象,可以实现很多很重要的功能。它们是:out对象、request对象、response对象、exception对象、config对象、page对象、pagecontext对象、application对象、session对象,在所有的JSP页面中都能使用它们。
2.1.3 JSP语法规则
1)JSP程序中的HTML代码部分不区分大小写。
2)JSP程序中的JSP程序片与Java语法要求相同,严格区分大小写。如MyName与myname是两个不同的变量。
3)变量必须先声明后使用。
4)声明变量和方法必须以分号(;)结尾。
5)一个声明仅在一个页面中有效。
6)可以直接使用在<% @ page %>中被包含进来的已经声明的变量和方法,不需要对它们重新进行声明。