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

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

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

    blogjava's web log

    blogjava's web log
    ...

    jsf學(xué)習(xí)二(國際化)

    國際化(I18N)就是設(shè)計軟件應(yīng)用,在不改變它們程序邏輯的前提下支持各種語言和區(qū)域
    本地化(L10N)就是設(shè)計軟件應(yīng)用支持特定地區(qū)
    由于數(shù)據(jù)經(jīng)過本地化,因此同一應(yīng)用程序能在全世界使用
    當(dāng)增加一種新的語言時,應(yīng)用不需要重新編譯
    在顯示和文化相關(guān)的數(shù)據(jù)(例如日期或貨幣)時,格式應(yīng)用遵循用戶的語言和區(qū)域
    文本內(nèi)容(如狀態(tài)消息和組件標(biāo)簽)不是硬編碼到應(yīng)用程序中,而通常是從文本文件中動態(tài)提取的

    國際化的步驟

    創(chuàng)建一個包含應(yīng)用程序默認(rèn)語言的鍵/值對的文件
    ?文件命名格式:
    Filename_languagecode_CountryCode.properties
    例如:
    ApplicationResources_zh_CN.properties



    JSF 提供 <f:loadBundle> 標(biāo)簽以加載資源包
    此標(biāo)簽具有兩個屬性:basename 和 var
    basename 指定要加載的 properties 文件的名稱
    var屬性用來為該properties文件起一個別名





    < f:view >
    ????
    < f:loadBundle? basename ="message" ?vars ="msg" ? />
    ….
    ????
    < h:outputLabel? value ="#{msg.first}" ? />
    </ f:view >


    資源文件編譯

    native2ascii –encoding gb2312 messagesCN.properties? messages_zh_CN.properties




    一個登陸實現(xiàn)國際化

    后臺檢查登陸是否正確
    ??public?String?Login(string?userName,string?passWord)?{
    ??????
    if?(?UserName=="blog")?{
    ??????????
    return?"success";
    ??????}
    ?else?{
    ?????FacesContext?context?
    =?FacesContext.getCurrentInstance();
    ?????ResourceBundle?bundle?
    =?ResourceBundle.getBundle("messages",?context.getViewRoot().getLocale());
    ??????String?msg?
    =?"";
    ?????
    if?(?username==""?||?passWord=="")
    ?????????msg?
    =?bundle.getString("username_isnull");
    ??
    ????context.addMessage?(
    null,?new?FacesMessage(msg));
    ????
    return?"shibai";?

    ?}

    ??}


    前臺
    <f:loadBundle?basename="message"?var="msg"/>
    <html>
    ?
    <f:view>
    ?????
    <h:form>
    ??????
    <h:outputText?value="#{msg.login}"/>?<br/>
    ??????
    <h:messages?style="color:?blue"/><br/>
    ??????
    <h:inputText?id="username"?value="#{UserBean.userName}"
    ???????????????????????????required
    ="true">
    ???????????
    <f:validateLongRange?minimum="0"?maximum="20"/>
    ??????
    </h:inputText><br/><br/>


    ????
    <h:outputText?value="#{msg.password}"/>?<br/>
    ??????
    <h:messages?style="color:?blue"/><br/>
    ??????
    <h:inputText?id="pssword"?value="#{UserBean.passWord}"
    ???????????????????????????required
    ="true">
    ???????????
    <f:validateLongRange?minimum="0"?maximum="16"/>
    ??????
    </h:inputText><br/><br/>


    ?????
    <h:commandButton?value="#{msg.button_title}"?
    ??????????????????????????????????????action
    ="#{userBean.Login}"/>
    ???
    </h:form>
    ?
    </f:view>
    </html>



    posted on 2006-08-20 10:43 record java and net 閱讀(2369) 評論(1)  編輯  收藏 所屬分類: jsf學(xué)習(xí)

    評論

    # re: jsf學(xué)習(xí)二(國際化) 2007-08-24 14:37 牛人

    JSF不能實現(xiàn)完全國際化!  回復(fù)  更多評論   

    導(dǎo)航

    常用鏈接

    留言簿(44)

    新聞檔案

    2.動態(tài)語言

    3.工具箱

    9.文檔教程

    友情鏈接

    搜索

    最新評論

    主站蜘蛛池模板: 免费在线看v网址| 国产禁女女网站免费看| 中文字幕久无码免费久久| 亚洲精华国产精华精华液网站| 亚洲国产美女福利直播秀一区二区 | 成熟女人牲交片免费观看视频 | 亚洲性猛交xx乱| 91在线亚洲精品专区| 国产AV无码专区亚洲AV男同| 亚洲中文字幕无码久久2020| 亚洲精品tv久久久久久久久| 中文字幕专区在线亚洲| 亚洲第一黄片大全| 久久亚洲国产精品123区| 国产桃色在线成免费视频| 色欲A∨无码蜜臀AV免费播| 99在线视频免费| 中文字幕免费在线看线人 | 亚洲一区二区三区在线| 亚洲伊人久久大香线蕉| 亚洲综合av一区二区三区不卡| 亚洲日本在线观看网址| 亚洲精品午夜国产va久久| 久久久久亚洲精品无码网址色欲 | 亚洲精品国产精品乱码不卞| 国产av无码专区亚洲国产精品| 国产亚洲AV夜间福利香蕉149| 亚洲午夜国产精品无码老牛影视| 亚洲国产精品VA在线看黑人| 亚洲天天做日日做天天看| 亚洲国产精品一区二区久| 亚洲丶国产丶欧美一区二区三区| 爱情岛论坛亚洲品质自拍视频网站| 香蕉视频在线观看免费| 国产99视频精品免费视频76| 久久精品视频免费播放| 国产妇乱子伦视频免费| 无码国模国产在线观看免费| 中文字幕亚洲不卡在线亚瑟| 亚洲婷婷在线视频| 国产午夜亚洲精品不卡免下载 |