这两天学习了struts2国际化信息机制,感觉很重要,所以,今天添加一点小笔记。
国际化信息机制 (三种 action范围、 package范围、 全局)
1. 全局国际化配置信息文件
全局国际化文件,对所有action 生效,任何程序都可以访问到,需要在struts.xml 配置常量 struts.custom.i18n.resources指定信息文件
页面product.jsp
1
2
3
4
5
6
|
<s:fielderror/>
<form action= "${pagecontext.request.contextpath }/product_add.action" method= "post" >
商品名:<input type= "text" name= "name" /><br/>
价格:<input type= "password" name= "price" /><br/>
<input type= "submit" value= "登录" />
</form>
|
编写productaction
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
public class productaction extends actionsupport {
private static final long serialversionuid = 1l;
private string name;
private double price;
public string add(){
system.out.println(name+ "---------" +price);
return success;
/*
get(),set()方法略去.................
*/
}
}
|
添加校验信息:(对action的方法进行校验 productaction-product_add-validation.xml
)
productaction-product_add-validation.xml
其中product_add
是struts.xml中action标签中的name的值
1
2
3
4
5
6
7
8
9
10
11
|
<!doctype validators public
"-//apache struts//xwork validator 1.0.3//en"
"http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd" >
<validators>
<!-- 校验商品 -->
<field name= "name" >
<field-validator type= "requiredstring" >
<message key= "wc" />
</field-validator>
</field>
</validators>
|
新建国际化信息文件 src
下 messages.properties
(默认的国际化文件)
注意:
1. 其中<message key="wc"/>中的key必须是messages.properties 的key值
2.messages.properties 的value值必须装换成unicode码, 使用myeclipse开发工具,内置properties editor 自动将中文转换 unicode码
2. action范围国际化文件
在action类 所在包 创建 action类名.properties
(无需在struts.xml 配置 )
3. package范围国际化文件
在package下面 建立 package.properties
(无需在struts.xml )
4. 在jsp页面获取
在国际化 messages.properties 添加一个信息
jsp页面代码:
1
2
3
|
<h1><s:i18n name= "messages" >
<s:text name= "cn.wc" ></s:text>
</s:i18n></h1>
|
5. 在action代码获取
在messages.properties 添加国际化信息
action转发的页面jsp
1
2
3
|
<s:text name= "welcome" >
<s:param>lxp</s:param>
</s:text>
|
action代码:
1
2
3
4
5
6
7
8
|
public class product2action extends actionsupport {
private static final long serialversionuid = 1l;
public string add(){
system.out.println( this .gettext( "welcome" , new string[]{ "action" }));
return success;
}
}
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://www.cnblogs.com/lxp503238/p/7151842.html?utm_source=tuicool&utm_medium=referral