Struts2 <s:url>標籤被用來創建一個URL,並輸出它作為文本格式。它從不通過自己的工作,但它可以提供URL鏈接到其他標籤,如<s:a>創建超鏈接或<img>渲染圖像。在本教程中,它顯示 Struts2 <s:url>標籤的5種常見用法。
1. 動作
Action類轉發請求。
URLTagAction.java
package com.xuhuhu.common.action;
import com.opensymphony.xwork2.ActionSupport;
public class URLTagAction extends ActionSupport{
public String execute() {
return SUCCESS;
}
}
2. <s:url>標籤示例
這裏舉5個例子來說明如何使用Struts2 <s:url> 標籤。
-
創建圖片URL。
<img src="<s:url value="/images/man.jpg"/>" />
輸出(假設根上下文名稱為“Struts2Example”)<img src="/Struts2Example/images/man.jpg" />
-
創建一個“Google”文字,並將其鏈接到http://www.google.com。
<a href="<s:url value="http://www.google.com" />" target="_blank">Google</a>
輸出
<a href="http://www.google.com" target="_blank">Google</a>
當以“http”或“www”字元開始定義URL值,在Struts 2將呈現它,因為它是不增加額外的根上下文的功能變數名稱為example1。 -
創建操作URL以“id”參數,並輸出它作為文本格式。
<s:url action="urlTagAction.action" > <s:param name="id">123</s:param> </s:url>輸出
/Struts2Example/urlTagAction.action?id=123
-
使用“name”參數來創建操作URL,並用<s:a>組合通過<s:property>標籤。
<s:url action="urlTagAction.action" var="urlTag" > <s:param name="name">zaixian</s:param> </s:url> <a href="<s:property value="#urlTag" />" >URL Tag Action (via property)</a>輸出
<a href="/Struts2Example/urlTagAction.action?name=zaixian" >URL Tag Action (via property)</a>
-
使用 “age” 參數創建操作URL,並用<s:a>通過組合“%{urlTag}標記。
<s:url action="urlTagAction.action" var="urlTag" > <s:param name="age">99</s:param> </s:url> <s:a href="%{urlTag}">URL Tag Action (via %)</s:a>輸出
<a href="/Struts2Example/urlTagAction.action?age=99">URL Tag Action (via %)</a>
全部的JSP代碼
url.jsp
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
</head>
<body>
<h1>Struts 2 URL tag example</h1>
<ol>
<li>
<img src="<s:url value="/images/man.jpg"/>" />
</li>
<li>
<a href="<s:url value="http://www.google.com" />" target="_blank">Google</a>
</li>
<li>
<s:url action="urlTagAction.action" >
<s:param name="id">123</s:param>
</s:url>
</li>
<li>
<s:url action="urlTagAction.action" var="urlTag" >
<s:param name="name">zaixian</s:param>
</s:url>
<a href="<s:property value="#urlTag" />" >URL Tag Action (via property)</a>
</li>
<li>
<s:url action="urlTagAction.action" var="urlTag" >
<s:param name="age">99</s:param>
</s:url>
<s:a href="%{urlTag}">URL Tag Action (via %)</s:a>
</li>
</ol>
</body>
</html>
3. struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<action name="urlTagAction"
class="com.xuhuhu.common.action.URLTagAction" >
<result name="success">/pages/url.jsp</result>
</action>
</package>
</struts>
4. 示例
http://localhost:8080/struts2urltag/urlTagAction.action
在流覽器中打上面的網址,它顯示結果如下圖:
參考
代碼下載 - http://pan.baidu.com/s/1c0gBXeC
上一篇:
Struts2 <s:texttag>標籤示例
下一篇:
Struts2資源包使用示例
