JSP JSTL <fmt:setBundle>標籤:指定訊息資源

2020-07-16 10:04:56
<fmt:setBundle> 標籤用於讀取系結的訊息資原始檔,當JSP頁面讀取本地訊息文字時,將從系結的訊息資原始檔中讀取相應的鍵值。

語法:

<fmt:setBundle basename="basename"
  [var="varName"]
  [scope="{page|request|session|application}"]/>


<fmt:setBundle>標籤各屬性的詳細介紹如表所示。

<fmt:setBundle>標籤屬性
屬性 型別 描述 參照 EL
basename String 指定訊息資原始檔的名稱,不需要指定檔案的擴充套件名稱 可以
var String 儲存資源的變數 不可以
scope String 變數的儲存範圍 不可以

說明:當 basename 為 null、空或找不到資原始檔時,在網頁上會產生 "???<key>???" 的錯誤資訊。

範例

應用 <fmt:setBundle> 標籤讀取系結的本地訊息文字 localMessage.properties,並使用 <fmt:message> 標籤獲取指定的鍵值,關鍵程式碼如下:
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  <fmt:setBundle basename="localMessage" scope="page"/>//獲取指定的鍵值
  <fmt:message key="company" var="company"/>
  <fmt:message key="author" var="author"/>
  <fmt:message key="branch" var="branch"/>
    公司:${company}
    作者:${author}
    部門:${branch}
說明:localMessage.properties 檔案位於 class 資料夾中。

localMessage.properties本地訊息檔案的具體內容如下:
company=C語言中文網
author=zs 
branch=Java Web
執行結果如下:
公司:C語言中文網  作者:zs  部門:Java Web