<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    struts2中有關國際化的應用

    資源文件的定義:
    在struts2里,資源文件被分成了三個級別:類級別,包級別,全局級別。
    執行時,將按照從小到大的順序依次搜索資源文件里的key值,直至找到。
    類級別的文件名定義:Action類名_語言碼_國家碼.properties,比如:LoginAction_en_US.properties,LoginAction_zh_CN.properties;
    如果是在全局中定義資源文件,則需要在struts.xml里配置,例子:<constant name="struts.custom.i18n.resources" value="message" />,其中message為資源文件的起始名;
    全局資源文件的位置在src\下。

    如何寫中文的資源文件:
    對于用于中文顯示的資源文件,以前需要使用java自帶的native2ascii.exe將中文內容轉換成對應的unicode,比較麻煩,而現在可以使用eclipse的插件自動轉換。
    eclipse插件:propertieEdit(一款由日本人開發的開源插件,可直接輸入中文,自動轉換)
    本地下載link:/Files/koradji/propertieEdit.zip
    下載后,將里面的目錄拷貝到eclipse下對應的目錄里,重新啟動eclipse就可以了。(可能需要在啟動命令里加上-clean)。

    在jsp里讀取資源文件的方法:
    畫面上的文字采用<s:text name="key" />寫;
    其他的,比如按鈕的value,textfield的label等采用<%{getText('key')}>寫,例子:<s:submit action="confirm" value="%{getText('confirm.button.label')}" /> ;
    或者,也可以使用這樣的寫法:<s:textfield name="username" key="page.index.text.username"></s:textfield>
    使用<s:i18n>可以指定臨時的資源文件,
    例子1:
        <s:i18n name="temp">  ----- baseName對應名稱的資源文件名
         <s:text name="info">  ----- info為資源文件中的key
          <s:param>張三</s:param>  ---- 指定第一個參數  {0}
          <s:param>23</s:param>     ---- 指定第二個參數  {1}
         </s:text>
        </s:i18n>
    例子2:
        <s:i18n name="org.scorpio.jh.struts2.i18n.web.action.LoginAction">
         <s:text name="page.index.text.username"></s:text>
         <s:text name="page.index.text.password"></s:text>
        </s:i18n>
    沒有實際應用過,猜測可能是在頁面上指定某個區域可以顯示與default locale不同的語言文字?

    在java里讀取資源文件的方法:
    Action類里(需要繼承ActionSupport),使用getText(String key)方法就能取得資源文件里的值;
    Business Services類里,使用ResourceBundle.getBundle(資源文件名).getString(key)方法取得值;

    如何切換畫面語言:
    在jsp里,在適當的位置放入下面的代碼:
    <s:url id="url" action="UnsubscribeNL_language">
         <s:param name="request_locale">en_US</s:param>
    </s:url>
    <s:a href="%{url}">English</s:a><br>
    <s:url id="url" action="UnsubscribeNL_language">
         <s:param name="request_locale">zh_CN</s:param>
    </s:url>
    <s:a href="%{url}">簡體中文</s:a>
    在發送請求時,struts會搜索攔截request_locale變量,并將該變量值設為default locale;
    在Action類里加入一個方法:public String language(),運行初始化返回本畫面即可;

    posted on 2009-12-30 15:17 koradji 閱讀(635) 評論(0)  編輯  收藏 所屬分類: java

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    收藏夾

    db2

    dos

    Groovy

    Hibernate

    java

    WAS

    web application

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 黄页网站在线视频免费| 亚洲AV无码一区二区大桥未久| 中文字幕视频免费在线观看| 免费成人黄色大片| 特级毛片全部免费播放a一级| 男人的天堂亚洲一区二区三区| 亚洲成人免费网址| 免费A级毛片无码无遮挡内射| 亚洲字幕在线观看| 在线观看视频免费国语| 亚洲av无码兔费综合| 国产在线播放免费| 成全视成人免费观看在线看| 亚洲乱码一区二区三区在线观看| 人妻免费一区二区三区最新| 亚洲欧洲国产精品你懂的| 麻豆国产精品免费视频| 亚洲女子高潮不断爆白浆| 四虎AV永久在线精品免费观看| 又粗又长又爽又长黄免费视频 | 亚洲一卡二卡三卡四卡无卡麻豆| 国内精品乱码卡1卡2卡3免费| 国产精品亚洲lv粉色| 精品亚洲成α人无码成α在线观看| a级毛片毛片免费观看久潮| 亚洲午夜在线一区| 免费国产人做人视频在线观看| 成年免费a级毛片免费看无码| 亚洲乱码中文论理电影| 国产中文字幕免费观看| 中文无码成人免费视频在线观看| 亚洲国产模特在线播放| 国产成人免费永久播放视频平台 | 成年人在线免费看视频| 最好2018中文免费视频| 国产亚洲一区二区三区在线观看| 精品国产无限资源免费观看| 乱人伦中文视频在线观看免费| 久久亚洲中文字幕精品有坂深雪| 大学生一级特黄的免费大片视频 | 日韩毛片免费无码无毒视频观看|