JSP 动作元素
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 动作可以将包含在
以下代码列出了使用插件动作的典型语法。
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