JSTLでコレクションのサイズを確認するにはどうすればいいですか?
何かのようなもの:
<c:if test="${companies.size() > 0}">
</c:if>
から: http://Java.Sun.com/products/jsp/jstl/1.1/docs/tlddocs/fn/tld-summary.html
length(Java.lang.Object) - コレクション内の項目数、または文字列内の文字数を返します。
fn名前空間を許可するには、これをページの上部に配置します。
<%@ taglib prefix="fn" uri="http://Java.Sun.com/jsp/jstl/functions" %>
そしてあなたのjspページでこのように使います:
<p>The length of the companies collection is : ${fn:length(companies)}</p>
それで、コレクションの長さでテストするには:
<c:if test="${fn:length(companies) gt 0}">
<p>It is greater than 0</p>
</c:if>
>
はjsp/jsfタグ内では使用できないため、>
の代わりにgt
を使用することに注意してください。
以前のコメントで@Joelと@Mark Chorleyが示唆しているように、
${empty companies}
これはnullと空のリスト/コレクション/配列をチェックします。長さはわかりませんが、OPの例を満たしています。あなたがそれを回避することができれば、これはタグライブラリとgt
のような地味な構文をインポートするよりもきれいです。
こんな感じで使えます
${fn:length(numList)}