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

<fmt:setLocale> étiquette

JSP 标准标签库

<fmt:setLocale> étiquette est utilisée pour stocker la région donnée dans la variable de configuration locale.

Format syntaxique

<fmt:setLocale value="<string>" variant="<string>" scope="<string>"/>

Propriété

Les attributs du tag <fmt:setLocale> sont les suivants :

PropriétéDescriptionEst-ce nécessaireValeur par défaut
value Spécifier ISO-639 Code langue et ISO-3166 Code pays Oui en_US
variant Variante spécifique au navigateur Non Aucun
scope Portée de la variable de configuration Locale Non Page

Exemple de programme

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 tous les locales, mais vous pouvez également spécifier des valeurs transformées pour un locale. Le jeu de ressources peut aider à fournir le contenu spécifique au locale.

Un fichier de ressources Java contient une série de paires de clés-valeurs. Les méthodes que nous examinons impliquent la création de classes Java compilées héritant de java.util.ListResourceBundle. Vous devez compiler ces classes et les placer dans le CLASSPATH de votre application Web.

Laissez-nous 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", "One"},
  {"count.two", "Two"},
  {"count.three", "Three"},
  };
}

Définissez maintenant un jeu de ressources pour le Locale espagnol :

package com.w3codebox;
import java.util.ListResourceBundle;
public class Example_es_ES extends ListResourceBundle {
  public Object[][] getContents() {
    return contents;
  }
  static final Object[][] contents = {
  {"count.one", "Uno"},
  {"count.two", "Dos"},
  {"count.three", "Tres"},
  };
}

Compiler les fichiers ci-dessus en Examble.class et Examble_es_ES.class, puis placez-les dans le CLASSPATH de l'application Web. Vous pouvez maintenant utiliser les balises 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:setLocale 标签</<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>
<!-- 修改地区-->
<fmt:setLocale value="es_ES">/>
<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>

运行结果如下:

Un 
Deux 
Trois
Uno
Dos
Tres

查看<fmt:bundle><setBundle>了解更多信息。

JSP 标准标签库