241 votes

Vérifiez une taille de collection avec JSTL

Comment puis-je vérifier la taille d'une collection avec JSTL?

Quelque chose comme:

 <c:if test="${companies.size() > 0}">

</c:if>
 

439voto

Martlark Points 5064

de: http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/fn/tld-summary.html

longueur( java.lang.Objet) - Retourne le nombre d'éléments dans une collection, ou le nombre de caractères dans une chaîne.

mettre ceci en haut de la page pour permettre au fn d'espace de noms

 <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

et à utiliser dans votre page jsp:

<p>The length of the companies collection is : ${fn:length(companies)}</p>

Donc à tester avec de la longueur d'une collection:

<c:if test="${fn:length(companies) gt 0}">
   <p>It is greater than 0</p>
</c:if>

Notez l'utilisation de l' gt au lieu de > comme > n'est pas admis à l'intérieur de jsp/jsf balises.

30voto

Josh Points 2369

Comme suggéré par @Joel et @Mark Chorley dans les commentaires précédents:

 ${empty companies}
 

Cela vérifie les listes / collections / tableaux vides et vides. Il ne vous obtient pas la longueur mais il satisfait l'exemple dans le PO. Si vous pouvez vous en sortir, c'est plus propre que d'importer une bibliothèque de balises et sa syntaxe croustillante comme gt .

-2voto

utilisez ${fn:length(companies) > 0} pour vérifier la taille. Cela renvoie un booléen

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X