這周打算把國際化、JDBC和XML學習一下,從下周就開始學習三大框架,再堅持一個半月吧就能入門JavaWeb了,上周周末兩天過的真是生不如死,兩天坐在家里,醒來就寫博客,原本在公司也自己操作了一遍,其實不用寫也可以,不過想著為了加深印象,還是自己寫出來這樣印象更深,基礎更扎實,學習編程就和當兵一樣,平時多流汗,戰(zhàn)時少流血,平時解決的bug多了,那以后遇到類似的就會學會避免出錯。還是接著上面的博客留下的坑來說。上一博客jsp標簽庫中留了幾個標簽,其中就有今天要學的多語言國際化的。

一、資源國際化、資源本地化

I18N:Internationalization,資源國際化,I10N,Localization,資源本地化,個人的感覺兩者沒什么區(qū)別,可能是主體不一樣,國際化是對于開發(fā)運營者來說,本地化對于用戶來說。

二、資源文件編碼

資源文件屬性名為properties,保存的是key-value形式的屬性對,必須為ASCII字符,由于中文、日文等是采用Unicode字符,所以要對其進行轉(zhuǎn)碼。轉(zhuǎn)碼可以使用JDK自帶的native2ascii.exe工具,位于JDK安裝目錄的bin文件下,可以使用命令行native2ascii -[options] [inputfile] [outputfile],其中options包括-encoding encoding_name 或reverse.-encoding encoding_name是將文件按照encoding_name指定的格式轉(zhuǎn)化,reverse將編碼后的文件還原,encoding可省略,如果指定,一定要與原文件編碼方式一致,否則會出現(xiàn)亂碼。

移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓

先在E:\java文件夾下新建了一個messages.txt的文件,然后寫入prompt.hello=您好!。打開命令行輸入native2ascii命令,如上圖可能會報錯,如果報錯可能是因為JDK沒寫入環(huán)境變量path中,也可以直接打開jdk的bin文件夾,在其文件夾下使用native2ascii命令,然后會自動輸出對應的資源文件。這里我輸出的是與源文件文件名一樣的,也可以直接輸出messages_zh_CN.properties.

prompt.hello=\u60a8\u597d!

三、資源文件的使用

1.不帶參數(shù)的資源文件

在WebContent/WEB-INF下創(chuàng)建classes文件夾,然后在文件夾下創(chuàng)建resources文件夾,之后把編碼過的資源文件引入,由于我沒在轉(zhuǎn)碼時直接轉(zhuǎn)成帶有l(wèi)ocale的,所以改名為messages_zh_CN.properties.最后創(chuàng)建一個messages.properties資源文件用于做為默認的資源文件,如果找不到就顯示這里面的。

移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓

在使用中就要用到上一博客的fmt標簽庫的標簽:<fmt:bundle/><fmt:message/><fmt:setBundle/>

<fmt:bundle basename="resources/messages" prefix="prompt.">
<fmt:message key="hello">
</fmt:message>
</fmt:bundle>

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設計培訓,網(wǎng)站建設培訓學習是年輕人改變自己的最好方式