Struts2国际化

Struts2国际化

 

一、简介


所谓国际化是指你的web系统,在不同国家或地区被访问,其中的一些主要信息,如注册信息中字段,错误信息提示等显示结果应

该与该地区或国家语言相同。这样用户很好理解你的网页。

Web系统国际化通过两步来完成。第一通过将文字内容以特定的方式存放在特定的文件中。第二,在运行时根据当前的语言环境决

定从哪个文件中读取文字内容。

Java中国际化的概念是将不同国家的语言描述的相同的东西放在各自对应的属性文件中,如果这个文件的名字叫做Message,那么

对应语言的文件分别为:

中文中国 message_zh_CN.properties

日文日本 message_ja_JP.properties

英文美国 message_en_US.properties

 

二、四种方式的国际化


1、JSP页面上的国际化

<s:i18n name="message">
  < !-- key="hello"依据读取资源文件中的hello关键字对应的内容,{0}表示第一个参数输出位置即${username}在这里输出-->
  <s:text key="hello">
    <s:param>${username}</s:param>
  </s:text>
 </s:i18n>

中英文资源如下:
     message_en_US.properties文件配置:hello=hello world,{0}
     
message_zh_CN.properties文件配置:hello=你好,{0}

 

2、表单元素的Label国际化

未国际化:

<s:textfield name="username" label="username"></s:textfield>
<s:textfield name="password" label="password"></s:textfield>

国际化后:

<s:textfield name="username" key="uname"></s:textfield>
<s:textfield name="password" key="pword"></s:textfield>


中英文资源如下:

message_en_US.properties文件,配置:
uname=username
pword=password

message_zh_CN.properties文件,配置:
uname=用户名
pword=密码

 

 

3、Action中的国际化

未国际化:

this.addFieldError("username", "the username error!");
this.addFieldError("password", "the password error!");

国际化后:

this.addFieldError("username", "username.error");
this.addFieldError("password", "password.error");

中英文资源如下:

message_en_US.properties文件配置:

username.error = the username error !

password.error = the password error!

message_zh_CN.properties文件配置:

username.error=用户名错误!

username.error=密码错误!

 

 4、配置文件中的国际化。以输入校验的LoginAction-validation.xml为例:

<field name="username">
     <field-validator type="requiredstring">
       <param name="trim">true</param>
       <message key="username.empty"></message>
     </field-validator>
     <field-validator type="stringlength">
       <param name="minLength">6</param>
       <param name="maxLength">12</param>
       <message key="username.size"></message>
     </field-validator>
</field>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值