1. 程式人生 > >在controller中通過ModelAndView返回到頁面的值,在jsp頁面怎麼取不到值呢?

在controller中通過ModelAndView返回到頁面的值,在jsp頁面怎麼取不到值呢?

首先先講下 el表示式和jstl

EL(Expression Language)是一種表示式語言,主要用於查詢作用域中的資料,然後對它們執行一些簡單的操作,用於對jsp標籤的屬性賦值。它不是程式語言。JSTL( JSP Standard Tag Library)是JSP標準 標籤庫,由apache實現,因為在jsp中出現大量Java程式碼不利於維護,sun公司就制定了一個類似於html標籤一下的jsp標籤技術,也有開始於結束標記。我們可以引用標籤來呼叫標籤庫中的Java程式碼片段來實現一下操作。使用jsp標準標籤庫有利於程式的可讀性,提高了程式碼的複用性與程式設計效率。其目的就是為了jsp中不出現Java程式碼片段。這兩者關係,JSTL通常會結合EL一起使用。也有理解為EL是JSTL的一部分。EL也可以單獨使用。

因此:在jsp表頭加這個就必須了  為什麼呢?因為<c:foreach items="" var="" varStatus="s"></c:foreach>等等的標籤都是人jstl的,要在人家jstl標籤裡遍歷什麼的,就得把下面那個頭加到jsp最頂端。

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

完.

 

 

 

順便寫下我的那個jstl標籤的el表示式如下:

<c:forEach items="${itemList}" var="lisi">
<tr>
    <td>${lisi.name}</td>
    <td>${lisi.price}</td>
    <td><fmt:formatDate value="${lisi.createtime}" pattern="yyyy-MM-dd HH:mm:ss"/></td>
    <td>${lisi.detail}</td>
    
    <td><a href="${pageContext.request.contextPath}/itemEdit.action?id=${lisi.id}">修改</a></td>
</tr>
</c:forEach>