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);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章