English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

<fmt:bundle> علامة

مكتبة العلامات القياسية لـ JSP

العلامة <fmt:bundle> تجعل مجموعة الموارد المتاحة للعلامة <fmt:message> الموجودة داخل علامة <fmt:bundle>. هذا يمكن أن يساعدك في تجنب الخطوات الكثيرة التي تتطلب تحديد مجموعة الموارد لكل علامة <fmt:message>.

على سبيل المثال، الخلايا الاثنتين التاليتين من <fmt:bundle> ستنتج نفس الناتج:

<fmt:bundle basename="com.w3codebox.Example">
    <fmt:message key="count.one"/>
</fmt:bundle>
<fmt:bundle basename="com.w3codebox.Example" prefix="count.">
    <fmt:message key="title"/>
</fmt:bundle>

نمط النص

<fmt:bundle baseName="<string>" prefix="<string>"/>

سمة

يملك <fmt:bundle> عدة خصائص:

سمة وصف هل هو ضروري قيمة افتراضية
basename تحديد اسم مجموعة الموارد الأساسية التي يتم تحميلها نعم لا
prefix تحديد بدلاً من مفتاح <fmt:message> الخاصية prefix نعم لا

مثال على البرنامج

مجموعة الموارد تحتوي على أغراض معينة للمناطق. تحتوي مجموعة الموارد على المفاتيح القيم. عند الحاجة إلى موارد معينة للمناطق في برنامجك، يمكنك مشاركة جميع الكلمات المفتاحية مع جميع locale، ولكن يمكنك أيضًا تحديد القيم المحولة للlocale. يمكن لمجموعة الموارد تقديم المحتويات المحددة للlocale.

ملف Java لمجموعة الموارد يحتوي على مجموعة من المفاتيح القيم. نحن نركز على الطريقة التي تتعلق بإنشاء فئة Java معبأة توريثها من java.util.ListResourceBundle. يجب عليك تعديل هذه الفئات ثم وضعه في CLASSPATH تطبيق الويب الخاص بك.

دعونا نحدد مجموعة الموارد الافتراضية:

package com.w3codebox;
import java.util.ListResourceBundle;
public class Example_En extends ListResourceBundle {
  public Object[][] getContents() {
    return contents;
  }
  static final Object[][] contents = {
  {"count.one", "One"},
  {"count.two", "Two"},
  {"count.three", "Three"},
  };
}

تعديل ملفات أعلاه إلى Example.class، ثم وضعه في مكان يمكن العثور عليه في CLASSPATH تطبيق الويب. الآن يمكنك استخدام JSTL لعرض هذه الأرقام الثلاثة، مثل هذا:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ 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>علامة fmt:bundle في JSTL</title>
</head>
<body>
<fmt:bundle basename="com.w3codebox.Example" prefix="count.">
   <fmt:message key="one"/><br/>
   <fmt:message key="two"/><br/>
   <fmt:message key="three"/><br/>
</fmt:bundle>
</body>
</html>

نتائج التنفيذ كالتالي:

واحد 
اثنان 
ثلاثة

أضفها بدون خصائص prefix:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ 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>علامة fmt:bundle في JSTL</title>
</head>
<body>
<fmt:bundle basename="com.w3codebox.Example">
   <fmt:message key="count.one"/><br/>
   <fmt:message key="count.two"/><br/>
   <fmt:message key="count.three"/><br/>
</fmt:bundle>
</body>
</html>

نتائج التنفيذ كالتالي:

واحد 
اثنان 
ثلاثة

يمكنك الرؤية<fmt:setLocale>و<fmt:setBundle>للحصول على معلومات إضافية.

مكتبة العلامات القياسية لـ JSP