首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Struts2复习(9)-国际化的应用

2012-07-01 
Struts2温习(9)--国际化的应用1. Java对国际化的支持: Java内部使用unicode编码方式。1) java.util.Locale

Struts2温习(9)--国际化的应用
1. Java对国际化的支持: Java内部使用unicode编码方式。
  1) java.util.Locale 表示了特定的地理、政治和文化地区. 环境信息对象。
            由语言代码和区域代码组成。
             语言代码小写字母: en,zh
             区域代码大写字母: US,CN
  2) java.util.ResourceBundle 用于绑定特定语言环境的资源对象。
             资源文件的命名规范:基本名_语言代码[_区域代码].properties
             默认资源文件名:基本名.properties
            中国:基本名_zh_CN.properties
            美国:基本名_en_US.properties
    
  3) java.text.MessageFormat 用于对含有占位符的字符进行格式化输出。
  4) 编码方式:
     Locale locale = Locale.CHINA;
     ResourceBundle rb  = ResourceBundle.getBundle("资源文件的基本名", locale);
     String value = rb.getString("key");
     String str = MessageFormat.format(value, Object... arguments);
2. Struts2的国际化应用
  1) 在classpath中添加针对特定语言环境的资源文件
  2) 在struts.xml中通过常量配置注册资源文件的基本名:
     <constant name="struts.custom.i18n.resources" value="msg"/>
  3) 在JSP页面中,用<s:text value="资源文件中的key"/>就可以取出本地化的消息
     Struts2的表单标签都有一个属性key用来取出本地化的消息
  4) 在Action中,可以使用ActionSupport类提供的getText("key", 给占位符传值的对象数组);也可以获取本地化的消息

具体示例
index.jsp
Java代码 



I18NAction.java
Java代码 


Java代码 
 

一般情况下我们浏览器默认语言都是中文,运行呈程序效果如下




如果更换浏览器语言为英语【美国】,那么重新刷新页面,结果就是英文界面如下






热点排行