Struts2 国际化总结
2008-09-25 13:15
543 查看
在src目录下的hellofile_en_US.properties 和 hellofile_zh_CN.properties是
测试程序Test3.java用到的
注:全局 资源文件message.properties放在src目录下,而且要在struts.xml中表明
<constant name="struts.custom.i18n.resources" value="message"></constant>
包级别 资源文件建在相应的包下,取名:package_en_US.properties 或 package_zh_CN.properties
类级别 资源文件建在与相应类同一个包下,取名:类名_en_US.properties 或 类名_zh_CN.properties
类级别资源文件优先级最高,全局资源文件优先级最低
国际化有四种情况
一、类型转换错误信息的国际化
二、数据校验看信息的国际化
1、在action的validate()方法进行数据校验实现国际化,利用ActionSupport提供的getTest()方法
例:this.addActionError(this.getText("username.invalid"));
对应message_en_US.properties中
username.invalid = username is invalid
其中:username.invalid是资源文件message.properties(或其对应国际化文件)的key值
若想输出带参数的错误信息,即{0}{1},则需用到getText(String key,String[]args)
或getText(String key,List args);
例:List list = new ArrayList();
list.add(username);-----username是用户输入的名称,即校验的对象
this.addActionError(this.getTest("usrname.invalid",list));
对应message_en_US.properties中
username.invalid = username {0} is invalid
2、用校验框架进行数据校验
校验框架产生的错误信息都放在fieldError中
在message标签中指定它的key属性的值即可
<validator type="requiredstring">
<param name="fieldName">username</param>
<message key="username.xml.invalid"></message>
</validator>
三、JSP显示页面的国际化
1、非表单(form)内容国际化
1.1 在页面中用<s:text name="(key值)">来引用message.properties中的key值所队应得information(信息)
1.2 用<s:i18n />标签来实现国际化
在src下建资源文件例:marker_en_US.properties 和 marker_zh_CN.properties,文件名自定
在jsp页面<s:i18n name="marker"> ---name指定资源文件的basename
<s:text name="hello"> ---hello指定资源文件的需要的key值
<s:param>world</s:param> ---给文件中对应的{0}{1}赋值
</s:text>
</s:i18n>
marker资源文件内容:hello = world {0}
2、表单(form)内容国际化
这时,form的theme属性不能设置为simple,然后给struts2标签设置key属性,即指定message.properties资源文件的key值
四、action中要输出信息的国际化
测试程序Test3.java用到的
注:全局 资源文件message.properties放在src目录下,而且要在struts.xml中表明
<constant name="struts.custom.i18n.resources" value="message"></constant>
包级别 资源文件建在相应的包下,取名:package_en_US.properties 或 package_zh_CN.properties
类级别 资源文件建在与相应类同一个包下,取名:类名_en_US.properties 或 类名_zh_CN.properties
类级别资源文件优先级最高,全局资源文件优先级最低
国际化有四种情况
一、类型转换错误信息的国际化
二、数据校验看信息的国际化
1、在action的validate()方法进行数据校验实现国际化,利用ActionSupport提供的getTest()方法
例:this.addActionError(this.getText("username.invalid"));
对应message_en_US.properties中
username.invalid = username is invalid
其中:username.invalid是资源文件message.properties(或其对应国际化文件)的key值
若想输出带参数的错误信息,即{0}{1},则需用到getText(String key,String[]args)
或getText(String key,List args);
例:List list = new ArrayList();
list.add(username);-----username是用户输入的名称,即校验的对象
this.addActionError(this.getTest("usrname.invalid",list));
对应message_en_US.properties中
username.invalid = username {0} is invalid
2、用校验框架进行数据校验
校验框架产生的错误信息都放在fieldError中
在message标签中指定它的key属性的值即可
<validator type="requiredstring">
<param name="fieldName">username</param>
<message key="username.xml.invalid"></message>
</validator>
三、JSP显示页面的国际化
1、非表单(form)内容国际化
1.1 在页面中用<s:text name="(key值)">来引用message.properties中的key值所队应得information(信息)
1.2 用<s:i18n />标签来实现国际化
在src下建资源文件例:marker_en_US.properties 和 marker_zh_CN.properties,文件名自定
在jsp页面<s:i18n name="marker"> ---name指定资源文件的basename
<s:text name="hello"> ---hello指定资源文件的需要的key值
<s:param>world</s:param> ---给文件中对应的{0}{1}赋值
</s:text>
</s:i18n>
marker资源文件内容:hello = world {0}
2、表单(form)内容国际化
这时,form的theme属性不能设置为simple,然后给struts2标签设置key属性,即指定message.properties资源文件的key值
四、action中要输出信息的国际化
相关文章推荐
- struts2第六天总结(国际化)
- struts2表单验证初步及国际化实现(学习总结)
- Struts2的国际化与上课总结
- struts2第六天总结(国际化)
- struts2第六天总结(国际化)
- 关于struts2和ext国际化的总结
- JavaWeb学习总结——Struts2国际化(尚硅谷_佟刚老师)
- Struts2学习总结(3)--值栈,Ognl表达式,Struts标签库,国际化,数据校验,拦截器
- struts2表单验证初步及国际化实现(学习总结)
- struts2的国际化 i18n 总结
- struts2表单验证初步及国际化实现(学习总结)
- Struts2学习总结(3)--值栈,Ognl表达式,Struts标签库,国际化,数据校验,拦截器
- Struts2的国际化与上课总结
- struts2表单验证初步及国际化实现(学习总结)
- struts2表单验证初步及国际化实现(学习总结)
- struts2的国际化i18n
- struts2的国际化
- Struts2国际化--用户自行选择程序语言的实现
- Struts2的国际化和访问资源文件的几种方式
- Struts2常用标签总结