Struts2 <s:texttag>標簽示例
Struts2 <s:text>標簽是用來從資源包獲取捆綁動作類的消息。並按照三個序列:
- 顯示來自資源包的消息,按照Struts2的資源包搜索順序。
-
如果未在資源包中找到消息,則標簽的本身會被顯示。
-
如果標記的主體是空的,在<s:text>標簽“name”屬性的值將被顯示。
一個完整的例子:
1. 動作
Action類轉發請求。
TextTagAction.java
package com.gitbook.netmon.action; import com.opensymphony.xwork2.ActionSupport; public class TextTagAction extends ActionSupport{ public String execute() throws Exception { return SUCCESS; } }
2. 屬性文件
一個簡單的屬性文件有兩個鍵“name.msg”和“name.msg.param”。
TextTagAction.properies
name.msg = "This is a message from properties file" name.msg.param = "This is a message from properties file - param : {0}"
3. <s:text>標簽示例
它顯示了<s:text>標簽的使用。
text.jsp
<%@ taglib prefix="s" uri="/struts-tags" %> <html> <head><title>www.gitbook.net</title> </head> <body> <h1>Struts2 text標簽示例</h1> <h2>1.<s:text name="name.msg" /></h2> Output : <s:text name="name.msg" /> <h2>2. <s:text name="name.msg.unknow">message doesn't exists</s:text></h2> Output : <s:text name="name.msg.unknow">message doesn't exists</s:text> <h2>3. <s:text name="name.msg.unknow" /></h2> Output : <s:text name="name.msg.unknow" /> <h2>4. <s:text name="name.msg.param" ><s:param >yiibai</s:param> </s:text></h2> Output : <s:text name="name.msg.param" > <s:param >yiibai</s:param> </s:text> </body> </html>
它是如何工作的?
1. <s:text name=”name.msg” />
從資源包獲取並顯示消息(TextTagAction.properies)關聯當前動作類 (TextTagAction.action).
"This is a message from properties file"
2. <s:text name=”name.msg.unknow”>message doesn’t exists</s:text>
鍵不在資源包“TextTagAction.properies”或搜索順序中,所以顯示標記的主體。
message doesn't exists
3. <s:text name=”name.msg.unknow” />
標簽的資源包和主體的消息未找到,所以顯示在“name”屬性的值。
name.msg.unknow
4. <s:text name=”name.msg.param” ><s:param >yiibai</s:param></s:text>
通過<s:param>標記傳遞參數到資源包。
"This is a message from properties file - param : yiibai"
4. 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="textTagAction" class="com.gitbook.netmon.action.TextTagAction" > <result name="success">/pages/text.jsp</result> </action> </package> </struts>
5. 執行結果
http://localhost:8080/struts2texttag/textTagAction.action
在瀏覽器中打開上麵的網址,顯示結果如下所示:
參考
下載代碼 -