程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> spring(11)------spring國際化支持

spring(11)------spring國際化支持

編輯:JAVA綜合教程

spring(11)------spring國際化支持


一,關於spring國際化的簡介

在java編程中,對於信息的處理一般有兩種方式:

(1)將信息存在數據庫裡,用的時候從數據庫裡取。(慣用手法數據字典就是)

(2)將信息存放在java常量類中,通過java類調用屬性值。

這兩種方式對於處理不需要國際化的網站,系統是能實現的,但是,如果需要國際化,

這兩種方式就實現國際化非常困難。

而spring對於國際的實現提供了良好的支持,Application通過繼承

org.springframework.context.MessageResource接口,通過getMessage()方法獲取信息資源,

從而實現國際化的目的。

二,getMessage()三種形式

(1)getMessage(java.lang.String arg0, java.lang.Object[] arg1, java.lang.String arg2, java.util.Locale arg3);

這個是獲取信息的基本方法,如果找不到指定信息,也就是java.lang.Object[] arg1傳入後沒有找到,

就用java.lang.String arg2這個信息作為默認信息。

(2)getMessage(java.lang.String arg0, java.lang.Object[] arg1, java.util.Locale arg2) throws org.springframework.context.NoSuchMessageException;

跟上一個方法同的是沒有指定默認值,如果根據傳入參數找不到指定信息,就會拋異常NoSuchMessageException。

(3)getMessage(org.springframework.context.MessageSourceResolvable arg0, java.util.Locale arg1) throws org.springframework.context.NoSuchMessageException;

通過MessageSourceResolvable獲取傳入信息的信號,傳入參數跟上面兩個方法類型不一樣,一般不常用。

三,spring關於國際化的實現思路

當ApplicationContext被加載的時候,會自動從spring配置文件XML中去查找id為messageSource的bean。

spring約定國際化支持的bean為messageSource,通過org.springframework.context.support.ResourceBundleMessageSource
綁定國際化信息的資源文件,獲取國際化信息。

四,簡單體驗下spring國際化,讓後再根據實例分析國際化的實現思想

用輸出中文做測試

我的項目結構:

\

messages_en_CN.properties文件內容:

HelloWorld=問候:{0},問候

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved