JSP语言基础

一、JSP注释和声明

在Java Web开发中,使用到的JSP注释一般可以分 为客户端注释和服务器端注释两种。客户端注释是指可以在客户端显示的注释:服务器端注释是指在客户端不可见,只供服务器端JSP开发人员可见的注释。

1、JSP注释

(1) 客户端注释

客户端注释被发送到客户端浏览器,用户通过查看源代码可以看到。这类注释类似于普通的HTML注释,不同的是这种JSP注释中可以加入JSP表达式。

客户端注释的基本语法格式如下:

<!--客户端注释[<&=表达式&>] -->

(2) 服务器端注释

服务器端注释虽然写在JSP 程序中,但不会发送到客户端,因此在客户端查看源代码时无法看见服务器端注释。这样的注释在JSP编译时被忽略。

服务器端注释有两种形式,其基本语法格式如下:

<%-- JSP页面注释--%>
<%/*-- JSP页面注释--*/%>
注意:
在JSP注释中不可以出现“--%>” ,否则会出现编译错误。若一定要出现“--%>”,需要使用“--%\>”替代。

2、JSP声明

JSP声明是用于定义在程序中使用到的变量、方法等。JSP声明的变量或方法,可以是一个或多个,但是最后要以分号“;” 结尾。

JSP声明的语法格式如下:

<%! 声明代码 %>

[例4-2]在JSP语言中,声明变量。代码如下:

<%! int a = 100,b=200;%>
<%! String[] array; %>

二、JSP程序段和表达式

1、JSP代码段

在JSP中程序段也称为JSP代码段,是放在<% %>标记之间符合Java 语言规范的代码片段。其语法格式如下:

<% 代码段 %>

在代码段中,可以包含用于JSP 变量和方法的声明、显示表达式、HTML以及调用JavaBean等。JSP语言的代码段符合Java 语言的语法,在实际运行时会被转换为Servlet。

2、JSP表达式

JSP表达式的作用是将动态信息显示在页面中。表达式的值是在运行后被自动转化为字符串,然后显示出来。JSP表达式的语法格式如下:

<%=变量或表达式 %>

变量:要在页面显示的值的变量名。
表达式:其值由服务器计算,计算结果以字符串的形式发送到客户端。
使用JSP表达式,需要注意以下两点:

(1) 不能使用分号“;”作为表达式的结束符号,但是用在声明中时需要用分号来结尾。
(2)表达式元素可以是任何有效形式的Java 表达式,其可以作为JSP元素的属性值。表达式的形式可以很复杂,即由多个表达式组成。

三、jsp指令和使用

JSP编译指令用于设置JSP程序的属性以及由JSP生成的Servlet中的属性。JISP 常用的编译指令有3个,即include指令、page 指令和taglib指令。include指令用于指定如何包含另一个文件: pagee 指令是针对当前页面的指令,能够控制从JSP页面生成的Servlet 的属性相结构;在JSP1.1 标准里面,新添加了一个指令taglib,用于定义和访问标签。

1、page指令

page指令用来设置整个JSP页面的相关属性和功能,其作用范围是整个JSP页面,包括使用include 指令引用的其他文件。但是page 指令不能作用于动态的包含文件,例如对使用jsp:include包含的文件,page 指令的设置是无效的。一般情况下, page 编译指令位于页面的最上方,一个页面可以有多个编译配置指令。

(1) 语法格式

page指令的基本语法格式如下:

<%@ page attribute1="value1" attribute2="value2"... %>

(2) 指令属性

page 指令有许多属性,具体介绍如下:

  • language 属性。定义当前JSP页面使用的脚本语言种类,默认是Java。少数服务器支持JavaScript。
  • language 属性。定义当前JSP页面使用的脚本语言种关,默认是Java。少数服务器
  • import 属性。导入要使用的包,在java语言中,要导入多个包,需要用import 分别引入、并用 “;” 隔开,在JSP中,如果用一一个imponr 指明多个包,需要用逗号“,”物开。默认导入的包有java.lang.、javax servlet.、javax sevlt.ttp.、javax.,srvetrijp.
  • contentType 属性。指定当前页面的MIME类型和字符编码。MIME 类型有:text/plain、text/html(默认类 型)、image/gif、 image/jpeg 等。默认的字符编码方式: ISO 8859-1。如果需要显示中文字体,一般设置charset为GB2312或GBK。在JSP页面中一般修改为contentType=“text/html;charset=UTF-8”,服务器响应的正文文件格式为text/html。 客户端用默认的浏览器方式打开文件。charset-=UTF-8 指服务器返回的文件编码格式为UTF-8。浏览器将按照UTF-8格式进行解码并且以UTF-8字符集进行页面显示。
  • pageEncoding 属性。设定JSP源文件保存时所使用的编码。由于JSP文件要响应客户端的请求,因此它会被编译成一个Servlet。 而Servlet是-一个Java 类,Java 类在内存中是以Unicode进行编码的。如果JSP引擎不知道JSP的编码格式,就无法进行解码,并将其转换成内存中的Unicode编码。
  • session 属性。指定这个JSP页面是否支持session机制,默认为true。
  • extends 属性。指定JSP编译生成的Servlet所继承的父类或所实现的接口。
  • errorPage 属性。指定错误处理页面的地址。如果本页面产生了异常或者错误,而该JSP页面没有对应的处理代码,此时就会自动调用该属性所指向的JSP页面。
  • isErrorPage 属性。与errorPage 属性配合使用,指定当前页面是否可以作为另一个JSP页面的错误处理页面。
  • isErrorPage 属性。与errorPage 属性配合使用,指定当前页面是否可以作为另一个JSP页面的错误处理页面。
  • buffer 属性。指定out对象使用缓冲区的大小。JSP的隐含对象out用于缓存JSP对客户端浏览器的输出,默认值为8KB。
  • autoFlush属性。当输出缓冲区即将溢出时,是否需要强制输出缓冲区的内容,默认为true.设置为true时可以正常输出,设置为false时,则会在buffer溢出时产生一个异常。
  • isThreadSafe属性。指定对JSP页面的访问是否为线程安全。如果设置为true,则表示该JSP文件支持多线程:如果设置为false,则表示该JSP文件不支持多线程。isThreadSafe属性的默认值为true。
  • trimDirectiveWhitespaces属性。是否去掉指令前后的空白字符,默认是false。 该属性是JSP2.1规范中新增的,当属性值是true时,取消指令前后的空白字符。

2、include指令

3、taglib指令

四、jsp动作和使用

1、include动作

2、forward动作

3、param动作

4、plugin动作

五、jsp异常类型

1、JspError

2、JSPException

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瀚海微光工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值