`

jsp行为元素(Action Elements)

 
阅读更多

行为元素(Action Elements)

JSP规范中定义一些标准action 的类型,JSP Container在实现时也完全遵照这个规范而制定。
行为元素的语法以XML为基础,在使用时大小写是有差别的。目前主要有20 项Action 元素:
1.存取JavaBean(3个)
<jsp:useBean>
<jsp:setProperty>
<jsp:getProperty>
2.JSP1.2原有的行为元素(6个)
<jsp:include>
<jsp:forward>
<jsp:param>
<jsp:plugin>
<jsp:params>
<jsp:fallback>
3.主要用于JSP Document是使用XML 语法所写成的JSP 网页。(6个)
<jsp:root>
<jsp:declaration>
<jsp:scriptlet>
<jsp:expression>
<jsp:text>
<jsp:output>
4.主要用于动太产生XML元素标签的值(3个)
<jsp:attribute>
<jsp:body>
<jsp:element>
5.主要用于TagFile中(2个)
<jsp:invoke>
<jsp:doBody>

一、<jsp:useBean>

二、<jsp:setProperty>

三、<jsp:getProperty>

四、<jsp:include>

1.功能:<jsp:include>元素允许你包含动态和静态文件,这两种产生的结果是不尽相同的。如果包含进来的只是静态文件,那么只是把静态文件的内容加到JSP 网页中;如果包含进来的为动态文件,那么这个被包含的文件也会被JSP Container 编译执行。一般而言,你不能直接从文件名称上来判断一个文件是动态的还是静态的,但是<jsp:include>能够自行判断此文件是动态的还是静态的,于是能同时处理这两种文件。
2.语法:
<jsp:include page="{urlSpec | <%= expression %>}" flush="true | false " />

<jsp:include page="{urlSpec | <%= expression %>}" flush="true | false" >
<jsp:param name="PN" value="{PV | <%= expression %>}" /> *
</jsp:include>
3.属性:<jsp:include>有两个属性:page 和flush。
page的值可以代表一个相对路径,即你所要包含进来的文件位置或是经过表达式所运算出的相对路径。
flush接受的值为boolean,假若为true,当缓冲区满时将会被清空。它的默认值为false。

五、<jsp:forward>

1.功能:<jsp:forward>将客户端所发出来的请求从一个JSP 网页转交给另一个JSP网页。不过有一点要特别注意,<jsp:forward>标签之后的程序将不能执行。
2.语法:
<jsp:forward page={"relativeURL" | "<%= expression %>"} />

<jsp:forward page={"relativeURL" | "<%= expression %>"} >
<jsp:param name="PN" value="{PV | <%= expression %>}" /> *
</jsp:forward>
3.属性:<jsp:forward>只有一个属性page。
page 的值可以是一个相对路径,亦可以是经过表达式运算出的相对路径。

六、<jsp:param>

1.功能:<jsp:param>用来提供key/value 的信息,它也可以与<jsp:include>、<jsp:forward>和<jsp:plugin> 一起搭配使用。当使用<jsp:include>或<jsp:forward>时,被包含的网页或转向后的网页会先看看request对象里除了原本的参数值之外,有没有再增加新的参数值,如果有增加新的参数值时,则新的参数值在执行时,有较高的优先权。
2.语法:
<jsp:param name="ParameterName" value="ParameterValue" />
3.属性:<jsp:param>有两个属性:name 和value。
name的值就是parameter的名称;而value 的值就是parameter 的值。
七、<jsp:plugin>
1.功能:<jsp:plugin>用于在浏览器中播放或显示一个对象(通常为Applet 或Bean)。当JSP 网页被编译后送往浏览器执行时,<jsp:plugin>将会根据浏览器的版本替换成<object>
标签或者<embed>标签。一般来说,<jsp:plugin>会指定对象Applet 或Bean,同样也会指定类的名字和位置,另外还会指定将从哪里下载这个Java 组件。
注意:<object>用于HTML 4.0,<embed>用于HTML 3.2。

2.语法:
<jsp:plugin type="bean | applet"
code="objectCode"
codebase="objectCodebase"
[ align="alignment" ]
[ archive="archiveList" ]
[ height="height" ]
[ hspace="hspace" ]
[ jreversion="jreversion" ]
[ name="ComponentName" ]
[ vspace="vspace" ]
[ width="width" ]
[ nspluginurl="URL" ]
[ iepluginurl="URL" ] >
[ <jsp:params>
[ <jsp:param name="PN" value="{PV | <%= expression %>}" /> ] +
</jsp:params> ]
 [ <jsp:fallback> text message for user </jsp:fallback> ]
</jsp:plugin>

3.属性:
type="bean|applet"    将被执行的对象类型,必须明确指定类型,这个属性没有默认值。
code="objectCode"    将被执行的类名称,必须以.class 结尾,并且 .class 类文件必须存在于codebase 属性所指定的目录中。
codebase="URL"    如果你没有设定将被执行的Java 类的目录(或者是路径)的属性,默认值为使用<jsp:plugin>的JSP 网页所在目录。
align="alignment"    位置。align 的值可以为:bottom、top、middle、left、right
archive="aList"    一些由逗号分开的路径名用于预先加载一些将要使用的类,此做法可以提高Applet 的性能。
name="ComponentName"    表示这个Bean 或Applet 的名字。
height="h" width="w"    显示Applet 或Bean 的长、宽的值,单位为像素 ( pixel )。
hspace="h" vspace="v"    表示Applet 或Bean 显示时在屏幕左右、上下所需留下的空间。
jreversion="version"    表示Applet 或Bean 执行时所需的JRE版本
nspluginurl="URL"    表示Netscape用户使用的JRE 的下载地址,此值为一个标准的URL。
iepluginurl="URL"    表示IE 用户使用的JRE 的下载地址,此值为一个标准的URL。

八、<jsp:params>

1.功能:传送参数给Applet 或Bean。
2.语法:
<jsp:params>
[ <jsp:param name="PN" value="{PV | <%= expression %>}" /> ]
</jsp:params>

九、<jsp:fallback>

1.功能:当不能启动Applet 或Bean 时,那么浏览器会有一段错误信息。
2.语法:<jsp:fallback> unable to start plugin </jsp:fallback>
十、<jsp:root>

十一、<jsp:declaration>

十二、<jsp:scriptlet>

十三、<jsp:expression>

十四、<jsp:text>

十五、<jsp:output>

十六、<jsp:attribute>

1.功能:<jsp:attribute>元素主要有两个用途, 当使用在<jsp:element>之中时,它可以定义XML 元素的属性;另外 它可以用来设定标准或自定义标签的属性值。
2.语法:
<jsp:attribute name="name" trim="true | false">
本体内容
</jsp:attribute >
3.属性:<jsp:attribute>有两个属性:name 和trim。
name 的值就是标签的属性名称。trim 可为true 或false。假若为true 时,<jsp:attribute>本体内容的前后空白,将被忽略;反之,前后空白将不被忽略。trim 的默认值为true。

十七、<jsp:body>

1.功能:<jsp:body>用来定义XML 元素标签的本体内容。
2.的语法:
<jsp:body>
本体内容
</jsp:body>
3.<jsp:body>没有任何的属性。

十八、<jsp:element>

1.功能:<jsp:element>元素用来动态定义XML 元素标签的值。
2.语法:
<jsp:element name="name">
本体内容
</jsp:element>

<jsp:element name="name">
<jsp:attribute>

</jsp:attribute>

<jsp:body>

</jsp:body>
</jsp:element>

例如:

       <jsp:element name="football" />

       执行后产生一个空元素:

       <football/>

      <jsp:element name="employee">

           <jsp:attribute name="name">张三</jsp:attribute>

           <jsp:body>张三是销售部经理</jsp:body>

     </jsp:element>

     执行后:

     <employee name="张三">张三是销售部的经理</employee>

3.属性:<jsp:element>只有一个属性name。name 的值就是XML元素标签的名称。

十九、<jsp:invoke>

二十、<jsp:doBody>

 

 

ps:

 

jsp

 

<%@ page language="java"  contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>My JSP 'index.jsp' starting page</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
  </head>
  <body>
  <form action="JspTestAction" method="POST">
  <jsp:useBean id="jspTest" class="form.JspTestBean" scope="page"></jsp:useBean>
  <jsp:setProperty name="jspTest" property="name" param="att1"/>
  <jsp:getProperty name="jspTest" property="name"/>
  
  <br/>
  <input type="text" name="att1" id="att1"><%=request.getAttribute("att1") %>jstl:${requestScope.att1 }
  <br/>
  <input type="text" name="att2" id="att1"><%=request.getAttribute("att2") %>jstl:${requestScope.att2 }
  <br/>abc
  <br/><input type="submit" value="提交">
  </form>
  </body>
</html>
 

 

servlet

 

        request.setAttribute("att1", request.getParameter("att1"));
        request.setAttribute("att2", request.getParameter("att2"));
        System.out.println(request.getSession().getAttribute("jspTest"));
        request.getRequestDispatcher("/index.jsp").forward(request, response);
 

 

form

 

package form;

public class JspTestBean {
	
	private String name = "默认名称";
	
	private String pwd = "默认密码";

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPwd() {
		return pwd;
	}

	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	
	

}
 

 

 

 

分享到:
评论

相关推荐

    JSP/Servlet

    JSP中有數種類型的Action元素,有一些使用於JavaBean,有一些使用於自訂標籤等等,這邊先介紹幾個常用的元素。 &lt;jsp:plugin&gt; (Applet標籤輸出) &lt;jsp:include&gt;、 &lt;jsp:forward&gt;、&lt;jsp:param&gt;、&lt;jsp:params&gt; JSP...

    JSP2.0技术手册pdf(带示例源码).zip

    4-6 Action Elements 4-7 错误处理 第五章 隐含对象(Implicit Object) 5-1 属性( Attribute ) 与范围( Scope ) 5-2 与 Servlet 有关的隐含对象 5-3 与 Input / Output 有关的隐含对象 5-4 与 Context 有关的隐含...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    12.3.3 动作元素(action elements) 376 12.3.4 注释 383 12.4 jsp的隐含对象 383 12.4.1 pagecontext 384 12.4.2 out 385 12.4.3 page 385 12.4.4 exception 386 12.5 对象和范围 387 12.6 留言板程序 389...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    12.3.3 动作元素(action elements) 376 12.3.4 注释 383 12.4 jsp的隐含对象 383 12.4.1 pagecontext 384 12.4.2 out 385 12.4.3 page 385 12.4.4 exception 386 12.5 对象和范围 387 12.6 留言板程序 389...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    12.3.3 动作元素(action elements) 376 12.3.4 注释 383 12.4 jsp的隐含对象 383 12.4.1 pagecontext 384 12.4.2 out 385 12.4.3 page 385 12.4.4 exception 386 12.5 对象和范围 387 12.6 留言板程序 389...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    12.3.3 动作元素(action elements) 376 12.3.4 注释 383 12.4 jsp的隐含对象 383 12.4.1 pagecontext 384 12.4.2 out 385 12.4.3 page 385 12.4.4 exception 386 12.5 对象和范围 387 12.6 留言板程序 389...

    jsp音乐网源码

    &lt;jsp:param name="action" value="songType"/&gt; &lt;/jsp:include&gt; ;height:25px; text-align:left; padding-left:10px; padding-top:5px; background-image:url(images/navigation_bg.gif);"&gt;当前位置:添加...

    JSP Simple Examples

    Include File JSP using directive and include action &lt;%@ include file = " "%&gt;: - This is include directive. This directive has only one attribute named as file, which is used to include a file in the ...

    Servlets和JSP核心技术 卷2(英文版) 第二部分

    Servlets和JSP核心技术 卷2 内容还是很详细的,看过卷1的人可以继续用这本书深造,呵呵 目录: Chapter 1. Using and Deploying Web Applications Section 1.1. Purpose of Web Applications Section 1.2. ...

    外文翻译 stus MVC

    Adapter lets classes work together that couldn_t otherwise because of incompatibility interface" (from Design Patterns - Elements of Reusable OO Software by Gof). The client in this instance is the ...

    Servlets和JSP核心技术 卷2(英文版) 第一部分

    Servlets和JSP核心技术 卷2 内容还是很详细的,看过卷1的人可以继续用这本书深造,呵呵 目录: Chapter 1. Using and Deploying Web Applications Section 1.1. Purpose of Web Applications Section 1.2. ...

    JavaEE 5.0 Tutorial.pdf

    Sun 官方 J2ee 5.0 教程 The Java EE 5Tutorial For Sun Java System Application Server 9.1 Contents Preface ..................................................................................................

Global site tag (gtag.js) - Google Analytics