Maison > Java > javaDidacticiel > Comment parcourir un HashMap dans JSP à l'aide de JSTL ?

Comment parcourir un HashMap dans JSP à l'aide de JSTL ?

Barbara Streisand
Libérer: 2024-12-27 19:42:11
original
307 Les gens l'ont consulté

How to Iterate Through a HashMap in JSP Using JSTL?

Comment parcourir une HashMap en JSP

Vous souhaitez parcourir une HashMap en JSP ? C'est simple, en suivant les mêmes principes que dans le code Java normal :

for (Map.Entry<String, String> entry : countries.entrySet()) {
    String key = entry.getKey();
    String value = entry.getValue();
    // ...
}
Copier après la connexion

Cependant, l'utilisation de scriptlets (code Java brut dans des fichiers JSP) est considérée comme une mauvaise pratique. Pensez plutôt à installer JSTL. Son La balise vous permet de parcourir Maps, chaque itération renvoyant une Map.Entry comportant les méthodes getKey() et getValue().

Voici un exemple JSTL de base :

<%@ taglib prefix="c" uri="jakarta.tags.core" %>

<c:forEach items="${map}" var="entry">
    Key = ${entry.key}, value = ${entry.value}<br>
</c:forEach>
Copier après la connexion

Appliquer ceci à votre cas spécifique, vous pouvez le résoudre avec :

<%@ taglib prefix="c" uri="jakarta.tags.core" %>

<select name="country">
    <c:forEach items="${countries}" var="country">
        <option value="${country.key}">${country.value}</option>
    </c:forEach>
</select>
Copier après la connexion

Pour utiliser ${countries} en EL, vous aurez besoin d'un Servlet ou ServletContextListener pour le placer dans la portée souhaitée. Pour les scénarios basés sur des requêtes, utilisez doGet() du servlet. Pour les constantes à l'échelle de l'application, utilisez contextInitialized() de ServletContextListener.

Pour plus d'informations, consultez ces ressources :

  • [Parcourez les éléments de List et Map à l'aide de JSTL tag](https://stackoverflow.com/a/26817162/14731)
  • [Comment parcourir une carte imbriquée dans ](https://stackoverflow.com/a/ 6644134/14731)
  • [Comment parcourir une ArrayList à l'intérieur d'un HashMap utilisant JSTL ?](https://stackoverflow.com/a/17615711/14731)
  • [Utilisation d'un servlet de démarrage automatique spécial pour initialiser au démarrage et partager les données de l'application](https://stackoverflow.com/ a/1942639/14731)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal