English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Bibliothèque de balises standard JSP
L'étiquette <fmt:bundle> rend le jeu de ressources spécifié disponible pour les étiquettes <fmt:message> apparaissant à l'intérieur de l'étiquette <fmt:bundle>. Cela peut vous permettre de vous épargner beaucoup de pas pour spécifier le jeu de ressources pour chaque étiquette <fmt:message>.
Par exemple, les deux blocs <fmt:bundle> suivants produisent le même résultat :
<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>"/>
L'étiquette <fmt:bundle> a les attributs suivants :
Attribut | Description | Est-ce nécessaire | Valeur par défaut |
---|---|---|---|
basename | Préciser le nom de base du jeu de ressources à charger | Oui | Non |
prefix | Préciser le préfixe de l'attribut key de l'étiquette <fmt:message> | Oui | Non |
Le jeu de ressources contient des objets spécifiques à la région. Le jeu de ressources contient des paires de clés-valeurs. Lorsque votre programme nécessite des ressources spécifiques à la région, vous pouvez partager toutes les paires de mots-clés pour toutes les regions, mais vous pouvez également spécifier des valeurs transformées pour une region spécifique. Le jeu de ressources peut aider à fournir le contenu spécifique à la region.
Un fichier de ressources Java contient une série de paires de clés-valeurs. La méthode que nous analysons implique la création d'une classe Java compilée héritant de java.util.ListResourceBundle. Vous devez compiler ces classes et les placer dans le CLASSPATH de votre application Web.
Permettons de définir un jeu de ressources par défaut :
package com.w3codebox; import java.util.ListResourceBundle; public class Example_En extends ListResourceBundle { public Object[][] getContents() { return contents; } static final Object[][] contents = { {"count.one", "Un"}, {"count.two", "Deux"}, {"count.three", "Trois"}, }; }
Compilation du fichier ci-dessus en Example.class, puis mettez-le dans un endroit accessible via le CLASSPATH de l'application Web. Vous pouvez maintenant utiliser JSTL pour afficher ces trois nombres, comme suit :
<%@ 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>JSTL fmt:bundle tag</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>
Les résultats de l'exécution sont les suivants :
Un Deux Trois
Le modifier sans attribut 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>JSTL fmt:bundle tag</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>
Les résultats de l'exécution sont les suivants :
Un Deux Trois
peut être consulté<fmt:setLocale>et<fmt:setBundle>pour obtenir plus d'informations.