簡體   English   中英

JSP中的request屬性和pagecontext屬性

[英]request attribute and pagecontext attribute in JSP

我遇到了在Action類中設置屬性的情況:

request.setAttribute("itemList", itemList); /* valid List item - confirmed */

在JSP上,我嘗試在forEach標簽中使用它

<c:forEach items="${itemList}" var="individualItem">

<!-- rest of the code -->

它被評估為空項目。 但我在此標記之前添加了一個小腳本:

<% List<MyItem> itemList = (List<MyItem>)request.getAttribute("itemList"); // evaluates as my valid item list 
   List<MyItem> itemList = (List<MyItem>)pageContext.getSession().getAttribute("itemList"); // evaluates as NULL
%>

這是否意味着我最好在前端使用pageContext或session Attribute而不是request Attribute? 還是有規則?

KR,

規則 :

這取決於您的要求,Session會在整個會話中(即直到用戶關閉瀏覽器或會話超時)保留數據(即變量值),而Request會沿單個請求保留數據(其中包括請求時的情況)重定向或調度。

在您的示例中,pageContext.getSession()。getAttribute(“ itemList”)返回null,因為您在請求中而不是會話中設置了屬性,但是為什么EL代碼返回null,我不知道為什么。 。可能是您在jsp中定義了名稱為'itemList'的局部變量,該變量為null,因此它首先讀取了該變量,請在此處查看答案

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM