位置:首頁 > Java技術 > Struts2教學 > Struts2 <s:texttag>標簽示例

Struts2 <s:texttag>標簽示例

Struts2 <s:text>標簽是用來從資源包獲取捆綁動作類的消息。並按照三個序列:


  1. 顯示來自資源包的消息,按照Struts2的資源包搜索順序
  2. 如果未在資源包中找到消息,則標簽的本身會被顯示。
  3. 如果標記的主體是空的,在<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

在瀏覽器中打開上麵的網址,顯示結果如下所示:

參考

  1. Struts2 <s:text>標簽文檔


下載代碼 -