Maison >Java >javaDidacticiel >Comment parcourir les HashMaps dans JSP à l'aide de JSTL et éviter les scriptlets ?
Parcourir une HashMap dans JSP est similaire à le faire en code Java brut. Utilisez la structure de boucle suivante :
<pre class="brush:php;toolbar:false">String key = entry.getKey(); String value = entry.getValue(); // ...
}
Bien que les scriptlets étaient auparavant courants, ils sont est désormais considérée comme une mauvaise pratique. Nous vous recommandons plutôt d'utiliser JSTL, qui fournit l'attribut
<p><foreach items="${carte}" var="entry"></foreach></p><pre class="brush:php;toolbar:false">Key = ${entry.key}, value = ${entry.value}<br>
Pour résoudre votre problème spécifique problème :
<p><select name="country"></select></p><pre class="brush:php;toolbar:false"><foreach items='"${countries}"' var='"country"'> <option value='"${country.key}"'>${country.value}</option> </foreach>
Pour rendre ${countries} accessible dans le périmètre demandé, utilisez un servlet ou ServletContextListener.
Voici des exemples d'utilisation de Servlet ou ServletContextListener :
<pre class="brush:php;toolbar:false">Map<string string> countries = MainUtils.getCountries(); request.setAttribute("countries", countries); request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response);</string>
}
< ;p>Ou :
<pre class="brush:php;toolbar:false">Map<string string> countries = MainUtils.getCountries(); event.getServletContext().setAttribute("countries", countries);</string>
}
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!