jstl <fmt:setLocale>標籤

<fmt:setLocale>標籤用於在locale配置變數中存儲給定的區域設置。

屬性

<fmt:setLocale>標籤具有以下屬性 -

屬性 描述 必需 默認
value 指定表示ISO-639語言代碼和ISO-3166國家代碼的兩部分代碼。 en_US
variant 流覽器特定的變體
scope 區域配置變數的範圍

示例

資源綁定包包含區域特定的對象,資源綁定包含鍵/值對。當程式需要特定於區域設置的資源時,可以將所有鍵保留在所有區域設置中,也可以使用特定於區域設置的翻譯值。 資源綁定包有助於提供特定於區域設置的內容。

Java資源包檔包含一系列鍵到字串的映射。這裏使用的方法是創建擴展java.util.ListResourceBundle類的Java類。必須編譯這些類檔並使其可用於Web應用程式的類路徑(使用Eclipse不需要此操作)。

下麵定義一個資源綁定包如下 -

檔:Example_Cn.java -

package com.zaixian;

import java.util.ListResourceBundle;

public class Example_Cn extends ListResourceBundle {
    public Object[][] getContents() {
        return contents;
    }

    static final Object[][] contents = { { "count.one", "一個" }, { "count.two", "兩個" }, { "count.three", "三個" }, };
}

下麵是顯示JSP頁面的代碼 -

檔:fmt_setLocale.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.util.*"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<html>
<head>
<title>JSTL fmt:setLocale標籤</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>

<body>
    <div style="margin: auto; width: 80%">
        <fmt:setLocale value="zh_cn" />
        <fmt:formatNumber value="101000.3" type="currency" />
        <br />
        <fmt:setLocale value="en_Us" />
        <fmt:formatNumber value="101000.3" type="currency" />
        <br />

        <fmt:setLocale value="zh_cn" />
        <fmt:formatDate value="<%=new Date()%>" />
        <br />
        <fmt:setLocale value="zh_tw" />
        <fmt:formatDate value="<%=new Date()%>" />
        <fmt:setLocale value="zh_cn" />
        <fmt:formatDate value="<%=new Date()%>" />
        <br />
        <fmt:setLocale value="de_de" />
        <fmt:formatDate value="<%=new Date()%>" />
        <br />

        <!-- Change the Locale -->
        <fmt:setLocale value="zh_cn" />
        <fmt:bundle basename="com.zaixian.Example_Cn">

            <fmt:message key="count.one" />
            <br />
            <fmt:message key="count.two" />
            <br />
            <fmt:message key="count.three" />
            <br />
        </fmt:bundle>

    </div>
</body>
</html>

編譯上述的Example_Cn,現在可以使用以下JSTL標籤來顯示以下三個數字,代碼運行結果如下 -

可通過查看<fmt:bundle<setBundle標籤來瞭解完整的概念。


上一篇: Jstl教學 下一篇: JSP+MySQL實例