在 JSP 頁面使用 <c:forEach> 迭代 List 時,item 屬性代表的是**每一次迭代取出的單一元素物件**,而非 List 本身,也非 List 的變數名稱。
<!-- Java 寫法 -->
for (String item : list) { ... }
<!-- JSTL 寫法 -->
<c:forEach var="item" items="${list}">
${item} <!-- 此處 item 即為 List 中的單一元素 -->
</c:forEach>
items="${list}":指定要迭代的集合(EL 表達式取得)。var="item":自訂變數名稱,代表目前迭代的元素,可在標籤體內直接用 ${item} 存取。${item.property} 取屬性值。誤以為 item 是型別宣告(如 List item),實際上 JSTL 不需宣告型別,var 只命名變數。