日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Struts2教程:國(guó)際化

國(guó)際化的作用就是根據(jù)不同國(guó)家的用戶在訪問Web或其他類型的程序時(shí),將各種信息以本地的常用形式顯示出來,如界面信息在中國(guó),就會(huì)顯示中文信息,在以英文為主的國(guó)家里,就會(huì)顯示英文信息。還有就是一些信息的格式,如日期格式等。

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、河北網(wǎng)絡(luò)推廣、小程序定制開發(fā)、河北網(wǎng)絡(luò)營(yíng)銷、河北企業(yè)策劃、河北品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供河北建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com

從屬性文件中獲得字符串信息是國(guó)際化的基本應(yīng)用。在Struts2中使用的屬性文件就是Java屬性文件,擴(kuò)展名為properties。在Struts2中的屬性文件可以有很多默認(rèn)的位置,Struts2可按如下的順序(或步驟)來定位屬性文件:

1. ActionClass.properties:屬性文件名和動(dòng)作類同名。Struts2會(huì)首先查詢與當(dāng)前訪問的動(dòng)作類同名,并且和ActionClass.class在同一個(gè)目錄下的屬性文件。

2. BaseClass.properties:BaseClass表示動(dòng)作類的基類。所有動(dòng)作類都會(huì)查找Object.properties文件(因?yàn)镺bject是所有Java類的基類),但要注意的是Object.properties文件可不能放到當(dāng)前動(dòng)作類的目錄中,由于Object在java.lang包中,因此,Object.properties要放到j(luò)dk包的java"lang目錄中。而對(duì)于ActionSupport.properties文件,當(dāng)然也不能放到動(dòng)作類的當(dāng)前目錄中,由于ActionSupport類中com.opensymphony.xwork2名中,因此,需要將ActionSupport.properties文件放到xwork2.jar包中的com\opensymphony\xwork2目錄中,由于放到j(luò)ar文件中不太方便,因此,可以使一個(gè)和當(dāng)前動(dòng)作類在一個(gè)目錄的類先繼承ActionSupport,然后所有的動(dòng)作類都繼承于這個(gè)類。代碼如下:

public class MyActionSupport extends ActionSupport
{
    ... ...
}
public class ActionClass extends MyActionSupport
{
    ... ...
}

這樣的話,只要存在一個(gè)MyActionSupport.properties,在當(dāng)前目錄下的所有動(dòng)作類都會(huì)讀取這個(gè)文件。

3. Interface.properties:這類文件和BaseClass.properties類似,Interface表示動(dòng)作類實(shí)現(xiàn)的接口。

4. 如果動(dòng)作類實(shí)現(xiàn)了ModelDriven, 那么重復(fù)第1步。

5. package.properties:大家要注意。這個(gè)文件就叫package.properties。不象Interface和BaseClass都是泛指。這個(gè)文件可以放到當(dāng)前動(dòng)作類的包的任何一層目錄下。如當(dāng)前動(dòng)作類在action.test包中。那么package.properties可以放到action目錄中,也可以放到action"test目錄中。Struts2會(huì)從離動(dòng)作類最近的位置開始查找package.properties文件。

6. 搜索il8n資源信息

7. 查找全局資源屬性文件

如下面是一個(gè)動(dòng)作類

 
 
 
 
  1. package action.test;  
  2.  
  3. import org.apache.struts2.*;  
  4. import com.opensymphony.xwork2.ActionSupport;  
  5.  
  6. public class Internationalizing extends ActionSupport          
  7. {  
  8.     public String execute() throws Exception  
  9.     {  
  10.         return "forward";  
  11.     }  
  12. }  
  13.  

在action\test目錄下有一個(gè)Internationalizing.properties文件,內(nèi)容如下:

delete = 刪除

save = 保存

我們可以在jsp文件中使用如下幾種方法取出資源信息:

< s:property value="getText('delete')"/>

< s:text name="save" />

3. 使用< s:il8n>標(biāo)簽。這個(gè)標(biāo)簽可以直接定位屬性文件,如abc.properties在WEB-INF\classes\test目錄下,內(nèi)容和Internationalizing.properties一樣,則可以使用如下的代碼讀取abc.properties的內(nèi)容:

 
 
 
 
  1. < %@ taglib prefix="s" uri="/struts-tags" %> 
  2. < s:i18n name="test.abc"> 
  3.     < s:text name="save" /> 
  4.     < s:text name="delete" /> 
  5. < /s:i18n> 

當(dāng)然,我們也可以使用全局的屬性文件,在WEB-INF"classes目錄下建立一個(gè)struts.properties文件,內(nèi)容如下:

struts.custom.i18n.resources=my

在WEB-INF\classes目錄下建立一個(gè)my.properties文件,當(dāng)Struts2按著上述的順序沒有找到相應(yīng)的屬性文件時(shí),最后就會(huì)考慮尋找全局的屬性文件,因此,就會(huì)找到my.properties。

還可以通過屬性文件名來讓Struts2按著客戶端瀏覽器的語言環(huán)境來找符合某種語言的屬性文件。如有三個(gè)屬性文件language.properties、language_en.properties、language_zh.properties。如果客戶端的語言是中文,Struts2就會(huì)讀language_zh.properties,如果是英文,就會(huì)讀language_en.properties。如果這兩個(gè)文件的某個(gè)不存在,就會(huì)讀language.properties。讀者可通過IE的[工具]->[Internet]->[語言]來測(cè)試客戶端瀏覽器的語言,如圖1所示:

【編輯推薦】

  1. Struts2教程:實(shí)現(xiàn)自已的攔截器
  2. Struts2教程:攔截器概述
  3. Struts2教程:上傳任意多個(gè)文件
  4. Struts2教程:在Action類中獲得HttpServletResponse對(duì)象
  5. Struts2教程:使用Validation框架驗(yàn)證數(shù)據(jù)

網(wǎng)站題目:Struts2教程:國(guó)際化
文章路徑:http://www.5511xx.com/article/cdisjog.html