Struts1_06_struts国际化

一、国际化:使一套软件可以适用多国语言。
    本地化:针对不国语言,开发不套软件的多个语言版本。


二、Java对国际化的支持:内核采用的是unicode2.1。用来支持国际化的核心类主要有:
  1. java.util.Locale:用来代表不同语言/区域的对象。
      new Locale(String languageCode, String countryCode);
     例:new Locale("zh", "CN");  new Locale("zh", "TW");
  2. java.util.ResourceBundle: 根据Locale来绑定相应的资源包.绑定成功后就可以从本Locale对应的资源包中取消息了。


     资源包对应的文件就是一个属性文件,key=value.命名:
     基本名_语言代码_地区代码.properties
     message_zh_CN.properties 简体中文区域的属性文件,要用native2ascii.exe进行编码
     message_en.properties    使用英文的区域的属性文件
     message.properties       默认的属性文件


  3. java.text.MessageFormat 用于对指定的消息模式字符串进行格式化(用值来替换消息模式字符串中的点位符)。


三、struts国际化的原理:
  它就是在java对国际化支持的基础上的一些封装。
  struts框架在第一次接收到客户的请求时,就会从http请求头取获取首选语言项来创建一个Locale实例,然后把它存放在session范围中。以后要显示国际化消息时,就用这个Locale实例来绑定资源包。
  1. 显示资源包中的硬编码信息:在页面中用标签:<bean:message key="消息key"/>
  2. 显示提示消息或错误信息:创建消息。传递消息。取出消息。
  3. 显示资源包中的动态消息。
  4. 根据用户的选择来确定要显示的语言界面。
      根据用户选择构造相应的Locale实例,然后存放到session中。session.setAttribute(Globals.LOCALE_KEY, locale);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值