JSP 语法详解 (zt) 3

转载 2004年07月14日 13:42:00
Page 指令


定义JSP文件中的全局属性. 

JSP 语法
<%@ page 
[ language="java" ] 
[ extends="package.class" ] 
[ import="{package.class | package.*}, ..." ] 
[ session="true | false" ] 
[ buffer="none | 8kb | sizekb" ] 
[ autoFlush="true | false" ] 
[ isThreadSafe="true | false" ] 
[ info="text" ] 
[ errorPage="relativeURL" ] 
[ contentType="mimeType [ ;charset=characterSet ]" | "text/html ; charset=ISO-8859-1" ] 
[ isErrorPage="true | false" ] 
%> 
例子
<%@ page import="java.util.*, java.lang.*" %> 
<%@ page buffer="5kb" autoFlush="false" %> 
<%@ page errorPage="error.jsp" %> 
描述/r
<%@ page %>指令作用于整个JSP页面,同样包括静态的包含文件。但是<% @ page %>指令不能作用于动态的包含文件,比如 <jsp:include> 

你可以在一个页面中用上多个<% @ page %>指令,但是其中的属性只能用一次,不过也有个例外,那就是import属性。因为import属性和Java中的import语句差不多(参照Java Language),所以你就能多用此属性几次了. 

无论你把<% @ page %>指令放在JSP的文件的哪个地方,它的作用范围都是整个JSP页面。不过,为了JSP程序的可读性,以及好的编程习惯,最好还是把它放在JSP文件的顶部. 

属性
language="java"
声明脚本语言的种类,暂时只能用"java" 

extends="package.class"
标明JSP编译时需要加入的Java Class的全名,但是得慎重的使用它,它会限制JSP的编译能力. 

import="{package.class | package.* }, ..."
需要导入的Java包的列表,这些包就作用于程序段,表达式,以及声明。 

下面的包在JSP编译时已经导入了,所以你就不需要再指明了: 

java.lang.* 
javax.servlet.* 
javax.servlet.jsp.* 
javax.servlet.http.* 

session="true | false"
设定客户是否需要HTTP Session.(学过ASP的人,应该对它不陌生)如果它为true,那么Session是有用的。 

如果它有false,那么你就不能使用session对象,以及定义了scope=session的<jsp:useBean>元素。这样的使用会导致错误. 

缺省值是true. 

buffer="none | 8kb | sizekb"
buffer的大小被out对象用于处理执行后的JSP对客户浏览器的输出。缺省值是8kb 

autoFlush="true | false"
设置如果buffer溢出,是否需要强制输出,如果其值被定义为true(缺省值),输出正常,如果它被设置为false,如果这个buffer溢出,就会导致一个意外错误的发生.如果你把buffer设置为none,那么你就不能把autoFlush设置为false. 

isThreadSafe="true | false"
设置Jsp文件是否能多线程使用。缺省值是true,也就是说,JSP能够同时处理多个用户的请求,如果设置为false,一个jsp只能一次处理一个请求 

info="text"
一个文本在执行JSP将会被逐字加入JSP中,你能够使用Servlet.getServletInfo方法取回。 

errorPage="relativeURL"
设置处理异常事件的JSP文件。 

isErrorPage="true | false"
设置此页是否为出错页,如果被设置为true,你就能使用exception对象. 

contentType="mimeType [ ;charset=characterSet ]" | "text/html;charset=ISO-8859-1"
设置MIME类型 。缺省MIME 类型是: text/html, 缺省字符集为 ISO-8859-1.


<jsp:forward>


重定向一个HTML文件,JSP文件,或者是一个程序段. 

JSP 语法
<jsp:forward page={"relativeURL" | "<%= expression %>"} /> 
or 
<jsp:forward page={"relativeURL" | "<%= expression %>"} > 
<jsp:param name="parameterName" 
value="{parameterValue | <%= expression %>}" />+ 
</jsp:forward> 
例子
<jsp:forward page="/servlet/login" /> 
<jsp:forward page="/servlet/login"> 
<jsp:param name="username" value="jsmith" /> 
</jsp:forward> 
描述/r
<jsp:forward>标签从一个JSP文件向另一个文件传递一个包含用户请求的request对象.<jsp:forward>标签以下的代码,将不能执行. 

你能够向目标文件传送参数和值,在这个例子中我们传递的参数名为username,值为scott,如果你使用了<jsp:param>标签的话,目标文件必须是一个动态的文件,能够处理参数. 

如果你使用了非缓冲输出的话,那么使用<jsp:forward>时就要小心。如果在你使用<jsp:forward>之前,jsp文件已经有了数据,那么文件执行就会出错. 

属性
page="{relativeURL | <%= expression %>}"
这里是一个表达式或是一个字符串用于说明你将要定向的文件或URL.这个文件可以是JSP,程序段,或者其它能够处理request对象的文件(如asp,cgi,php). 

<jsp:param name="parameterName" value="{parameterValue | <%= expression %>}" />+
向一个动态文件发送一个或多个参数,这个文件一定是动态文件. 

如果你想传递多个参数,你可以在一个JSP文件中使用多个<jsp:param>。name指定参数名,value指定参数值.


<jsp:getProperty>


获取Bean的属性值,用于显示在页面中 

JSP 语法
<jsp:getProperty name="beanInstanceName" property="propertyName" /> 
例子
<jsp:useBean id="calendar" scope="page" class="employee.Calendar" /> 
<h2> 
Calendar of <jsp:getProperty name="calendar" property="username" /> 
</h2> 
描述/r
这个<jsp:getProperty>元素将获得Bean的属性值,并可以将其使用或显示在JSP页面中.在你使用<jsp:getProperty>之前,你必须用<jsp:useBean>创建它. 

<jsp:getProperty>元素有一些限制: 

你不能使用<jsp:getProperty>来检索一个已经被索引了的属性 
你能够和JavaBeans组件一起使用<jsp:getProperty>,但是不能与Enterprise Bean一起使用。 
属性
name="beanInstanceName"
bean的名字,由<jsp:useBean>指定 

property="propertyName"
所指定的Bean的属性名。 

技巧:
在sun的JSP参考中提到,如果你使用<jsp:getProperty>来检索的值是空值,那么NullPointerException将会出现,同时如果使用程序段或表达式来检索其值,那么在浏览器上出现的是null(空).

JSP的介绍和基本语法

JSP的介绍和基本语法jsp概述JSP全称Java Server Pages,是SUN公司定义的一种用于开发动态WEB资源的技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以结束。js...
  • qq_33689414
  • qq_33689414
  • 2017年03月04日 22:58
  • 485

JSP 基本语法

JSP(全称Java Server Pages): JSP与PHP、ASP、ASP.NET等语言类似,运行在服务端的语言。 JSP(全称Java Server Pages)是由Sun ...
  • u013420428
  • u013420428
  • 2017年04月15日 23:37
  • 379

JSP语法(一)

JSP声明一个声明语句可以声明一个或多个变量、方法,供后面的Java代码使用。在JSP文件中,必须先声明这些变量和方法然后才能使用它们。...
  • jianggujin
  • jianggujin
  • 2016年02月02日 11:18
  • 2022

Jsp语法、指令及动作元素

一、JSP的语法    1、JSP的模板元素:(先写HTML)    就是JSP中的那些HTML标记    作用:页面布局和美化   2、JSP的Java脚本表达式:    作用:输出数...
  • u013805360
  • u013805360
  • 2015年08月27日 23:09
  • 816

复习:JSP基本语法(JSP注释 + JSP指令 + JSP脚本元素 + JSP动作元素)

JSP原理: 1.    对于每一个请求,jsp容器都会创建一个新的线程来处理它; 2.    Servlet容器加载jsp后转换成的servlet(.class文件)是常驻内存的,所以相应速度一般比...
  • Songjs19931206
  • Songjs19931206
  • 2015年08月15日 13:54
  • 1348

JSP的三大指令和七大动作基本语法

JSP的基本构成 JSP页面主要由指令标签,注释,嵌入Java代码,JSP动作标签,HTML标记语言等五个元素组成。 【1】指令标签  1.1 page指令   page指令的常用属性如下:...
  • lovequanquqn
  • lovequanquqn
  • 2016年05月06日 19:57
  • 3016

jsp语法类型和九大内置对象

一.编译器指令 1.include  //静态导入,是在servlet引擎转译时,就把此文 件内容包含进去(两个文 件的源代码整合到一起,全部放到jspService方法中),所以只生成一 个s...
  • yuhui123999
  • yuhui123999
  • 2016年05月29日 22:14
  • 402

jsp中的JSTL与EL表达式用法

JSTL (JSP Standard Tag Library ,JSP标准标签库) JSTL标签库分为5类:JSTL核心标签库、JSTL函数标签库、数据库标签库、I18N格式化标签库、XML标签...
  • tan313
  • tan313
  • 2015年11月12日 21:25
  • 982

JSP 语法详解

HTML 注释 在客户端显示一个注释. JSP 语法 ] –> 例子 1 在客户端的HTML源代码中产生和上面一样的数据:  例子 2...
  • u011240216
  • u011240216
  • 2017年07月28日 14:59
  • 291

python 3.x 与python 2.x语法细节差异比较

python 3.x 与python 2.x语法细节差异比较 Python 2.x 和python 3.x语法区别 1.性能  Py3.0运行 pystone benchmark的速度比Py...
  • DianaCody
  • DianaCody
  • 2014年05月07日 18:44
  • 1279
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSP 语法详解 (zt) 3
举报原因:
原因补充:

(最多只允许输入30个字)