struts2的国际化:
1.页面的国际化,也就是jsp的国际化。
2.Action的国际化
3.类型转换信息的国际化
4.数字校验的国际化
一、这里主要讲的是Action的国际化:
以src下com.test.action包里面的RegisterAction.java为例:
1、在registered2.jsp页面,把代码
<s:fielderror cssStyle="color:red"/>
修改为:
<s:actionerror cssStyle="color:red"/>
2、然后修改RegisterAction.java类里面的验证方法validate():
public void validate() {
System.out.println("validate~~~~~~~~~~~~~~");
//
// this.addFieldError("username", "aaaaaaaaaaaaaaa");
if(null == username || username.length() < 6 || username.length() > 10){
this.addActionError(this.getText("username.invalid"));
}
}
3、修改属性文件message_zh_CN.properties和message_en_US.properties:
message_zh_CN.properties文件:
addUser = \u589e\u52a0\u7528\u6237\u4fe1\u606f
username.invalid = \u7528\u6237\u540d\u586b\u5199\u4e0d\u6b63\u786e
message_en_US.properties文件:
addUser = Add User Information
username.invalid = username invalid
4、然后编译项目,重启服务,重新测试查看效果是能够实现国际化。
Action国际化第二种方式:使用getText方法
public void validate() {
System.out.println("validate~~~~~~~~~~~~~~");
//
// this.addFieldError("username", "aaaaaaaaaaaaaaa");
if(null == username || username.length() < 6 || username.length() > 10){
List list = new ArrayList();
list.add(username);
this.addActionError(this.getText("username.invalid",list));//list方式
this.addActionError(this.getText("username.invalid",new String[]{username}));//数组方式
}
}
二、验证框架,xml文件的国际化
xml文件里面都是field级别的提醒
1、所以在jsp页面还是使用field级别的提醒:
<s:fielderror cssStyle="color:red"/>
2、修改src下com.test.action包里面的xml文件RegisterAction-validation.xml:
<field-validator type="requiredstring" >
<param name="trim">true</param>
<!-- message>username should not be blank!!!</message>-->
<message key="username.xml.invalid"></message>
</field-validator>
然后查看验证效果。
三、类型转换
资源文件分类管理分为两种:包级别和类级别的。
1、包级别的资源文件,在包com.test.action里创建包级别的资源文件:package_en_US.properties和package_zh_CN.properties,其中package前缀是固定的。
package_en_US.properties:
username.xml.invalid = package information
package_zh_CN.properties:
username.xml.invalid = \u5305\u7ea7\u522b\u63d0\u793a\u4fe1\u606f
如果在包级别中有存在的资源文件,就不会再去找了。
2、类级别的资源文件,在包com.test.action里创建类级别的资源文件:RegisterAction_en_US.properties和RegisterAction_zh_CN.properties,其中RegisterAction前缀是类的名字。
package_en_US.properties:
username.xml.invalid = RegisterAction information
package_zh_CN.properties:
username.xml.invalid = \u7c7b\u7ea7\u522b\u63d0\u793a\u4fe1\u606f
四、表单国际化
表单中label的国际化
在jsp页面
<s:form action="register">
<table align="center" width="40%" border="1">
<tr>
<td>username
</td>
<td>
<s:textfield name="username" key="username.xml.invalid" id="usernameId"></s:textfield>
</td>
</tr>
</s:form>
查看验证效果。
分享到:
相关推荐
struts2学习笔记总结
Struts2学习笔记,介绍了struts2的基础部分
本人学习struts2的笔记,希望大家可以多多学习以后共同交流
struts2学习笔记,非本人所写,但有学习的价值,总结的很好,分享一个!
这是学习struts2时记得重点笔记,包括了一些原理,ognl语句的编写,以及如何设置拦截器等等一些基本知识,起到复习和巩固的作用
1. struts2框架的引入 1)把struts2的相关jar包导入到项目中去 2)把struts2框架的配置文件struts.xml复制粘贴到项目中的src下面(同时也可以把log4j.properties放到src下) 在这里我们主要是要的这个struts.xml文件...
struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...
struts2学习笔记.struts2学习笔记
NULL 博文链接:https://zhaolianyang.iteye.com/blog/1495860
struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换
Struts2 学习笔记.doc,Struts2 学习笔记.doc
namespace :对应与项目名称后面的"/"(例如Struts2_0100_Introduction后面的"/") (http://localhost:8080/Struts2_0100_Introduction/) 四、 标签 是用来解决重名的问题,例如当系统的前台和后台都有一个action...
NULL 博文链接:https://zhaolianyang.iteye.com/blog/859814
struts2学习笔记.rar
NULL 博文链接:https://zhaolianyang.iteye.com/blog/859890
struts2四天的学习笔记。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。