生命之风的低语
Whispers in the Wind of Life.

JSP 动作元素

2025-08-04 10:56:35

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 属性有四个可能的值:

pagerequestsessionapplicationjsp:include 动作jsp:include动作将文件插入JSP页面。语法如下所示:

include 指令在JSP页面被翻译成servlet时包括一个文件,而jsp:include动作在请求页面时插入文件。

下表列出了与包含动作相关联的属性。

属性 描述 page 要包括的页面的相对URL。 flush boolean属性确定包含的资源在包含之前是否应使其缓冲区刷新。 以下代码显示如何使用include动作。

这里是data.jsp。

Today"s date: <%= (new java.util.Date()).toLocaleString()%>

这里是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: <%= (new java.util.Date()).toLocaleString()%>

这里是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元素。

<%@page language="java" contentType="text/html"%>

xmlns:jsp="http://java.sun.com/JSP/Page">

Value

Body