Struts2 <s:texttag>标签示例
精华
小牛编辑
173浏览
2023-03-14
Struts2 <s:text>标签是用来从资源包获取捆绑动作类的消息。并按照三个序列:
- 显示来自资源包的消息,按照Struts2的资源包搜索顺序。
-
如果未在资源包中找到消息,则标签的本身会被显示。
-
如果标记的主体是空的,在<s:text>标签“name”属性的值将被显示。
一个完整的例子:
1. 动作
Action类转发请求。
TextTagAction.java
package com.yiibai.common.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.yiibai.com</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.yiibai.common.action.TextTagAction" > <result name="success">/pages/text.jsp</result> </action> </package> </struts>
5. 执行结果
http://localhost:8080/struts2texttag/textTagAction.action
在浏览器中打开上面的网址,显示结果如下所示:
参考
- Struts2 <s:text>标签文档
下载代码 -