Vérifier une taille de collection avec JSTL

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

Quelque chose comme:

 0}">  

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

length (java.lang.Object) – Retourne le nombre d’éléments dans une collection ou le nombre de caractères d’une chaîne.

mettez ceci en haut de la page pour autoriser l’espace de noms fn:

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

et utiliser comme ça dans votre page jsp:

 

The length of the companies collection is : ${fn:length(companies)}

Donc, pour tester avec la longueur d’une collection:

  

It is greater than 0

Notez que l’utilisation de gt au lieu de > as > n’est pas autorisée dans les balises jsp / jsf.

Comme suggéré par @Joel et @Mark Chorley dans des commentaires antérieurs:

 ${empty companies} 

Cela vérifie les listes / collections / tableaux nuls et vides. Cela ne vous donne pas la longueur mais cela satisfait l’exemple de l’OP. Si vous pouvez vous en sortir, c’est plus propre que d’importer une bibliothèque de balises et sa syntaxe croustillante comme gt .

Vous pouvez utiliser comme ça

 ${fn:length(numList)} 

Pour que votre déclaration jstl fonctionne, vous devez la changer en:

  

Pour cela, vous devez append une méthode à la classe company appelée getSize qui renvoie la taille en tant que int. puis utilisez simplement la même déclaration jstl que vous avez utilisée auparavant.

Voici un exemple de la méthode getSize à append à la classe de votre entreprise:

 public int getSize(){ return companies.size(); } 

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