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

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

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

    posts - 75,comments - 83,trackbacks - 0
    看到 I18N 就應(yīng)該想到知識“國際化”, I18N formatting 標(biāo)簽庫就是用于在 JSP 頁面中做國際化的動作。在該標(biāo)簽庫中的標(biāo)簽一共有 12 個,被分為了兩類,分別是:
    1. 國際化核心標(biāo)簽:<fmt:setLocale><fmt:bundle><fmt:setBundle><fmt:message><fmt:param><fmt:requestEncoding>?
    2.?格式化標(biāo)簽:<fmt:timeZone><fmt:setTimeZone><fmt:formatNumber><fmt:parseNumber><fmt:formatDate><fmt:parseDate>

    下面只選擇其中常見的一些標(biāo)簽和屬性進行介紹。

    9.5.1?用于設(shè)置本地化環(huán)境的<fmt:setLocale>標(biāo)簽

    <fmt:setLocale>標(biāo)簽用于設(shè)置Locale環(huán)境。它的屬性和描述如表9.17所示:

    9.17 <fmt:setLocale>標(biāo)簽屬性和說明

    屬性

    描述

    value

    Locale環(huán)境的指定,可以是java.util.LocaleString類型的實例

    scope

    Locale環(huán)境變量的作用范圍(可選)

    下面看一個示例:

    <fmt:setLocale value="zh_TW"/>
    表示設(shè)置本地環(huán)境為繁體中文。

    9.5.2?用于資源文件綁定的<fmt:bundle><fmt:setBundle>標(biāo)簽

    這兩組標(biāo)簽用于資源配置文件的綁定,唯一不同的是<fmt:bundle>標(biāo)簽將資源配置文件綁定于它標(biāo)簽體中的顯示,<fmt:setBundle>標(biāo)簽則允許將資源配置文件保存為一個變量,在之后的工作可以根據(jù)該變量來進行。

    根據(jù)Locale環(huán)境的不同將查找不同后綴的資源配置文件,這點在國際化的任何技術(shù)上都是一致的,通常來說,這兩種標(biāo)簽單獨使用是沒有意義的,它們都會與I18N formatting標(biāo)簽庫中的其他標(biāo)簽配合使用。它們的屬性和描述如表9.18所示:

    9.18 <fmt:bundle><fmt:setBundle>標(biāo)簽屬性和說明

    屬性

    描述

    basename

    資源配置文件的指定,只需要指定文件名而無須擴展名,二組標(biāo)簽共有的屬性

    var

    <fmt:setBundle>獨有的屬性,用于保存資源配置文件為一個變量

    scope

    變量的作用范圍



    下面看一個示例

    <fmt:setLocale value="zh_CN"/>

    <fmt:setBundle basename="applicationMessage" var="applicationBundle"/>

    該示例將會查找一個名為applicationMessage_zh_CN.properties的資源配置文件,來作為顯示的Resource綁定。

    9.5.3?用于顯示資源配置文件信息的<fmt:message>標(biāo)簽

    用于信息顯示的標(biāo)簽,將顯示資源配置文件中定義的信息。它的屬性和描述如表9.19所示:

    9.19 <fmt:message>標(biāo)簽屬性和說明


    屬性

    描述

    key

    資源配置文件的“鍵”指定

    bundle

    若使用<fmt:setBundle>保存了資源配置文件,該屬性就可以從保存的資源配置文件中進行查找

    var

    將顯示信息保存為一個變量

    scope

    變量的作用范圍




    下面看一個示例:

    <fmt:setBundle basename="applicationMessage" var="applicationBundle"/>

    <fmt:bundle basename="applicationAllMessage">

    ???????? <fmt:message key="userName" />

    ???????? <p>

    ???????? <fmt:message key="passWord" bundle="${applicationBundle}" />

    </fmt:bundle>

    該示例使用了兩種資源配置文件的綁定的做法,“applicationMessage”資源配置文件利用<fmt:setBundle>標(biāo)簽被賦于了變量“applicationBundle”,而作為<fmt:bundle>標(biāo)簽定義的“applicationAllMessage”資源配置文件作用于其標(biāo)簽體內(nèi)的顯示。

    q???????? 第一個<fmt:message>標(biāo)簽將使用“applicationAllMessage”資源配置文件中“鍵”為“userName”的信息顯示。

    q???????? 第二個<fmt:message>標(biāo)簽雖然被定義在<fmt:bundle>標(biāo)簽體內(nèi),但是它使用了bundle屬性,因此將指定之前由<fmt:setBundle>標(biāo)簽保存的“applicationMessage”資源配置文件,該“鍵”為“passWord”的信息顯示。

    9.5.4?用于參數(shù)傳遞的<fmt:param>標(biāo)簽

    <fmt:param>標(biāo)簽應(yīng)該位于<fmt:message>標(biāo)簽內(nèi),將為該消息標(biāo)簽提供參數(shù)值。它只有一個屬性value

    <fmt:param>標(biāo)簽有兩種使用版本,一種是直接將參數(shù)值寫在value屬性中,另一種是將參數(shù)值寫在標(biāo)簽體內(nèi)。

    9.5.6?用于為請求設(shè)置字符編碼的<fmt:requestEncoding>標(biāo)簽

    <fmt:requestEncoding>標(biāo)簽用于為請求設(shè)置字符編碼。它只有一個屬性value,在該屬性中可以定義字符編碼。

    9.5.7?用于設(shè)定時區(qū)的<fmt:timeZone><fmt:setTimeZone>標(biāo)簽

    這兩組標(biāo)簽都用于設(shè)定一個時區(qū)。唯一不同的是<fmt:timeZone>標(biāo)簽將使得在其標(biāo)簽體內(nèi)的工作可以使用該時區(qū)設(shè)置,<fmt:setBundle>標(biāo)簽則允許將時區(qū)設(shè)置保存為一個變量,在之后的工作可以根據(jù)該變量來進行。它們的屬性和描述如表9.20所示:

    9.20 <fmt:timeZone><fmt:setTimeZone>標(biāo)簽屬性和說明

    屬性

    描述

    value

    時區(qū)的設(shè)置

    var

    <fmt:setTimeZone>獨有的屬性,用于保存時區(qū)為一個變量

    scope

    變量的作用范圍




    9.5.8?用于格式化數(shù)字的<fmt:formatNumber>標(biāo)簽

    <fmt:formatNumber>標(biāo)簽用于格式化數(shù)字。它的屬性和描述如表9.21所示:

    9.21 <fmt:formatNumber>標(biāo)簽屬性和說明

    屬性

    描述

    value

    格式化的數(shù)字,該數(shù)值可以是String類型或java.lang.Number類型的實例

    type

    格式化的類型

    pattern

    格式化模式

    var

    結(jié)果保存變量

    scope

    變量的作用范圍

    maxIntegerDigits

    指定格式化結(jié)果的最大值

    minIntegerDigits

    指定格式化結(jié)果的最小值

    maxFractionDigits

    指定格式化結(jié)果的最大值,帶小數(shù)

    minFractionDigits

    指定格式化結(jié)果的最小值,帶小數(shù)

    <fmt:formatNumber>標(biāo)簽實際是對應(yīng)java.util.NumberFormat類,type屬性的可能值包括currency(貨幣)、number(數(shù)字)和percent(百分比)。

    下面看一個示例。

    <fmt:formatNumber value="1000.888" type="currency" var="money"/>

    該結(jié)果將被保存在“money”變量中,將根據(jù)Locale環(huán)境顯示當(dāng)?shù)氐呢泿鸥袷健?/span>

    9.5.9?用于解析數(shù)字的<fmt:parseNumber>標(biāo)簽

    <fmt:parseNumber>標(biāo)簽用于解析一個數(shù)字,并將結(jié)果作為java.lang.Number類的實例返回。<fmt:parseNumber>標(biāo)簽看起來和<fmt:formatNumber>標(biāo)簽的作用正好相反。它的屬性和描述如表9.22所示:

    9.22 <fmt:parseNumber>標(biāo)簽屬性和說明

    屬性

    描述

    value

    將被解析的字符串

    type

    解析格式化的類型

    pattern

    解析格式化模式

    var

    結(jié)果保存變量,類型為java.lang.Number

    scope

    變量的作用范圍

    parseLocale

    以本地化的形式來解析字符串,該屬性的內(nèi)容應(yīng)為Stringjava.util.Locale類型的實例

    下面看一個示例。

    <fmt:parseNumber value="15%" type="percent" var="num"/>

    解析之后的結(jié)果為“0.15”。

    9.5.10?用于格式化日期的<fmt:formatDate>標(biāo)簽

    <fmt:formatDate>標(biāo)簽用于格式化日期。它的屬性和描述如表9.23所示:

    9.23 <fmt:formatDate>標(biāo)簽屬性和說明

    屬性

    描述

    value

    格式化的日期,該屬性的內(nèi)容應(yīng)該是java.util.Date類型的實例

    type

    格式化的類型

    pattern

    格式化模式

    var

    結(jié)果保存變量

    scope

    變量的作用范圍

    timeZone

    指定格式化日期的時區(qū)

    <fmt:formatDate>標(biāo)簽與<fmt:timeZone><fmt:setTimeZone>兩組標(biāo)簽的關(guān)系密切。若沒有指定timeZone屬性,也可以通過<fmt:timeZone><fmt:setTimeZone>兩組標(biāo)簽設(shè)定的時區(qū)來格式化最后的結(jié)果。

    9.5.11?用于解析日期的<fmt:parseDate>標(biāo)簽

    <fmt:parseDate>標(biāo)簽用于解析一個日期,并將結(jié)果作為java.lang.Date類型的實例返回。<fmt:parseDate>標(biāo)簽看起來和<fmt:formatDate>標(biāo)簽的作用正好相反。它的屬性和描述如表9.24所示:

    9.24 <fmt:parseDate>標(biāo)簽屬性和說明

    屬性

    描述

    value

    將被解析的字符串

    type

    解析格式化的類型

    pattern

    解析格式化模式

    var

    結(jié)果保存變量,類型為java.lang.Date

    scope

    變量的作用范圍

    parseLocale

    以本地化的形式來解析字符串,該屬性的內(nèi)容為Stringjava.util.Locale類型的實例

    timeZone

    指定解析格式化日期的時區(qū)

    <fmt:parseNumber><fmt:parseDate>兩組標(biāo)簽都實現(xiàn)解析字符串為一個具體對象實例的工作,因此,這兩組解析標(biāo)簽對var屬性的字符串參數(shù)要求非常嚴格。就JSP頁面的表示層前段來說,處理這種解析本不屬于份內(nèi)之事,因此<fmt:parseNumber><fmt:parseDate>兩組標(biāo)簽應(yīng)該盡量少用,替代工作的地方應(yīng)該在服務(wù)器端表示層的后段,比如在Servlet中。

    posted on 2008-04-17 20:15 梓楓 閱讀(440) 評論(0)  編輯  收藏 所屬分類: jstl標(biāo)簽類

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国产婷婷综合丁香亚洲欧洲| 亚洲bt加勒比一区二区| 亚洲午夜无码毛片av久久京东热| 国产婷婷成人久久Av免费高清| 亚洲精品无码日韩国产不卡?V| 曰批免费视频播放免费| 亚洲国产人成中文幕一级二级| 一级a性色生活片久久无少妇一级婬片免费放| 国产精品国产午夜免费福利看| 久久久久久亚洲av无码蜜芽| 国产成人啪精品视频免费网| 老司机午夜在线视频免费观| 亚洲精品国产精品乱码不卡| 99久久精品毛片免费播放| 亚洲国产成人精品无码区在线观看 | 久久久无码精品亚洲日韩按摩| 在线免费观看亚洲| 精品日韩99亚洲的在线发布| 我要看WWW免费看插插视频| 青草久久精品亚洲综合专区| 亚洲国产中文字幕在线观看 | 最近免费视频中文字幕大全| 亚洲成人免费电影| 国产美女无遮挡免费视频| 免费大片黄在线观看| 亚洲精品成人片在线播放| 2019中文字幕在线电影免费| 亚洲午夜理论片在线观看| 亚洲AV成人潮喷综合网| 久久久久国产精品免费免费不卡| 亚洲乱码卡三乱码新区| 免费人成网站7777视频| 免费a级毛片无码a∨免费软件| 亚洲妇女水蜜桃av网网站| 国产精品黄页在线播放免费| 精品一区二区三区免费观看| 亚洲国产精品午夜电影| 免费一级大黄特色大片| 嫩草影院在线播放www免费观看| 亚洲成a人片在线看| 久久伊人亚洲AV无码网站|