JSP教程 - JSP动作元素
JSP动作控制底层servlet引擎的行为。
使用JSP动作,我们可以动态插入文件,重用JavaBeans组件或将用户转发到另一个页面。
以下代码是动作元素的语法:
例子
我们可以使用以下JSP动作元素。语法 目的
jsp:include 包括文件
jsp:useBean 初始化JavaBean
jsp:setProperty 设置JavaBean的属性
jsp:getProperty 从JavaBean获取属性
jsp:forward 将请求转发到另一个页面
jsp:plugin 为Java插件生成OBJECT或EMBED标记
jsp:element 动态定义XML元素。
jsp:attribute 定义XML元素的属性。
jsp:body 定义XML元素的主体。
jsp:text 在JSP页面和文档中写入模板文本。
JSP动作中的通用属性
所有Action元素有两个常用属性:id属性和scope属性。
Id属性唯一标识Action元素。我们可以使用id来引用JSP页面中的动作。
Scope属性标识Action元素的生命周期。scope属性有四个可能的值:page
request
session
application
jsp:include 动作
jsp:include动作将文件插入JSP页面。语法如下所示:
include指令在JSP页面被翻译成servlet时包括一个文件,而jsp:include动作在请求页面时插入文件。
下表列出了与包含动作相关联的属性。属性 描述
page 要包括的页面的相对URL。
flush boolean属性确定包含的资源在包含之前是否应使其缓冲区刷新。
以下代码显示如何使用include动作。
这里是data.jsp。
Today"s date:
这里是main.jsp文件的内容:
jsp:useBean 动作
useBean动作首先使用id和scope属性搜索现有对象。如果没有找到对象,它将创建指定的对象。
加载bean的最简单的方法如下:
一旦bean被加载,我们可以使用jsp:setProperty和jsp:getProperty动作来修改和检索bean属性。
下表列出了与useBean动作相关联的属性。描述 描述
class 定义bean的完整包名称。
type 指定变量的类型。
beanName 命名加载的bean。
jsp:setProperty 动作
setProperty动作设置Bean的属性。
我们可以在jsp:useBean元素之外使用jsp:setProperty,如下所示。
或者我们可以在jsp:useBean元素的正文中包含jsp:setProperty,如下所示。
...
在上面的代码中,只有在实例化新对象时才执行jsp:setProperty,而不是如果找到现有对象。
下表列出了与setProperty动作相关联的属性。描述 描述
name 将设置其属性的bean的名称。
property 要设置的属性。 值“*"表示名称与bean属性名称匹配的所有请求参数都将传递到相应的setter方法。
value 要设置为属性的值。
param param属性是请求参数的名称。
jsp:getProperty 动作
getProperty动作检索给定属性的值并将其转换为字符串,然后将其插入到输出中。
getProperty动作有两个属性,如下所示:
...
以下是与getProperty动作相关联的必需属性的列表。描述 描述
name 必须先前已定义的Bean的名称。
property Bean属性的名称。
userBean示例,set/get属性
创建JavaBean如下。package action;
public class TestBean {
private String message = "No message specified";
public String getMessage() {
return(message);
}
public void setMessage(String message) {
this.message = message;
}
}
将上面的代码编译为TestBean.class文件,并将TestBean.class复制到C:\apache-tomcat\webapps\WEB-INF\classes\action文件夹。
将以下代码保存到hello.jsp文件。
property="message"
value="Hello JSP..." />
jsp:forward 动作
forward动作将请求转发到另一个静态页面,或另一个JSP页面或Java Servlet。
此动作的简单语法如下:
下表列出了forward动作所需的属性。属性 描述
page 其他资源的相对网址。
以下代码显示如何使用forward动作。
date.jsp文件:
Today"s date:
这里是main.jsp文件:
jsp:plugin 动作
plugin动作可以将包含在或标签中的Java applet插入JSP页面。
以下代码列出了使用插件动作的典型语法。
width="60" height="80">
Unable to initialize Java Plugin
jsp:body 动作
< jsp:element>,< jsp:attribute> 和< jsp:body> 动作定义XML元素。
以下代码显示了如何动态定义XML元素。
xmlns:jsp="http://java.sun.com/JSP/Page">
Value
Body