精通struts技术第二章(5)

类别:Java 点击:0 评论:0 推荐:

<jsp:include>

用于在JSP中包含静态或动态的WEB组件。语法如下:

<jsp:include page="urlSpec" flush="true">

<jsp:param ... />

</jsp:include>

 

表2.9描述了<jsp:include>的属性:

属性

说明

page

要包含的资源的地址,基于URL

flush

指明是否缓冲。

 

通过一个例子来对include进行说明:

 

列表 2.13 include.jsp.

----------------------------------------------------------------

<html>

<head>

<title>Include Example</title>

</head>

<body>

<table width="100%" cellspacing="0">

<tr>

<td align="left">

<jsp:include page="header.jsp" flush="true">

<jsp:param name="user"

value=’<%= request.getParameter("user") %>’ />

</jsp:include>

</td>

</tr>

</table>

</body>

</html>

------------------------------------------------------------

include.jsp文件包含了一个简单的JSP文件header.jsp,文件显示如下:

 

列表 2.14. header.jsp.

------------------------------------------

<%

out.println("<b>Welcome: </b>" +

request.getParameter("user"));

%>

------------------------------------

header.jsp寻找名称为user的参数并输出“welcome……”字符串。复制JSP文件到:

<CATALINA_HOME>/webapps/wileyapp/ 目录,在浏览器中输入地址.:

http://localhost:8080/wileyapp/include.jsp?user=Bob

 

<jsp:forward>

在当前的WEB应用中告诉JSP引擎重定向当前请求到另外可用的资源上,包括静态资源,servlets,JSP等。<jsp:forward>能有效的终止当前执行的JSP。

注意:<jsp:forward>能包含<jsp:param>子属性,这个子属性作为从定向的目标资源。

语法如下:

<jsp:forward page="relativeURL">

<jsp:param .../>

</jsp:forward>

 

表2.10对<jsp:forward>的属性进行描述:

属性

说明

page

重定向的目标

 

列表:2.15使用<jsp:forward>的例子:检验请求参数并且重定向请求到包含对应参数的JSP页面。

列表2.15  forward.jsp.

-----------------------------------------------------------------

<html>

<head>

<title>JSP Forward Example</title>

</head>

<body>

<%

if ( (request.getParameter("role")).equals("manager") ) {

%>

<jsp:forward page="management.jsp" />

<%

}

else {

%>

<jsp:forward page="welcome.jsp">

<jsp:param name="user"

value=’<%=request.getParameter("user") %>’ />

</jsp:forward>

<%

}

%>

</body>

</html>

-------------------------------------------

forward.jsp简单的检验请求参数的角色类型,然后重定向请求到相应的页面。

目标资源文件之一:welcome.jsp.

------------------------------------------------

<html>

<!-- Set the scripting language to java -->

<%@ page language="java" %>

<HTML>

<HEAD>

<TITLE>Welcome Home</TITLE>

</HEAD>

<BODY>

<table>

<tr>

<td>

Welcome User: <%= request.getParameter("user") %>

</td>

</tr>

</table>

</body>

</HTML>

----------------------------------------------------------

目标资源文件之二:management.jsp

------------------------------------------------------

<html>

<!-- Set the scripting language to java -->

<%@ page language="java" %>

<HTML>

<HEAD>

<TITLE>Management Console</TITLE>

</HEAD>

<BODY>

<table>

<tr>

<td>

Welcome Manager: <%= request.getParameter("user") %>

</td>

</tr>

</table>

</BODY>

</HTML>

复制三个JSP文件到<CATALINA_HOME>/webapps/ wileyapp/目录下,在浏览器中输入:

http://localhost:8080/wileyapp/forward.jsp?role=user&user=Bob

你可以通过修改输入的角色来重定向到不同的页面。

 

<jsp:plugin>

导致下载指定的applet和JavaBeans组件,并同步执行业务。

. <jsp:plugin>语法如下:

<jsp:plugin type="pluginType"

code="classFile"

codebase="relativeURLpath">

<jsp:params>

</jsp:params>

</jsp:plugin>

表2.11说明了<jsp:plugin>的属性:

属性

说明

type

说明plug-in包含的类型(比如applet)

code

被plug-in执行的类名称

Codebase

 

寻找代码的绝对或相对路径

 

 

小结:

在这一章我们讲述了Struts技术的两个基础:servlet和JSP。我们试验了它们的结构和组件。了解了JSP和servlet 技术是如何在WEB应用中被装配使用的。下一章,我们将真正开始讲述Strutst技术。

 

作者:James Goodwill   翻译:周海方

欢迎转载,前提是注明出处和译者

本文地址:http://com.8s8s.com/it/it17183.htm