如何使用EL在JSP中获取request/session/servletcontext属性?
我知道这并不难,但我一点运气都没有 我想从JSP中可用的Servlet中创建如何使用EL在JSP中获取request/session/servletcontext属性?,jsp,jstl,el,Jsp,Jstl,El,我知道这并不难,但我一点运气都没有 我想从JSP中可用的Servlet中创建dublist。因此,在Servlet中,我有: request.setAttribute("list", fooList); RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/myJsp.jsp"); dispatcher.forward(request, response); 然后在JSP中,我想要: <c
dublist
。因此,在Servlet中,我有:
request.setAttribute("list", fooList);
RequestDispatcher dispatcher =
getServletContext().getRequestDispatcher("/myJsp.jsp");
dispatcher.forward(request, response);
然后在JSP中,我想要:
<c:forEach var="post" items="${SOME_EL_HERE}">
<!-- stuff -->
</c:forEach>
其中SOME_EL\u HERE
是一个表达式,用于检索我在请求中设置的属性
有什么想法吗?我倾向于不通过添加框架使简单任务复杂化,但我愿意改变策略。这只是您在此处设置的属性名称:
request.setAttribute("list", fooList);
因此它是“列表”
:
这与session.setAttribute(“name”,value)
和application.setAttribute(“name”,value)
的工作方式相同。该值以EL表示,只需${name}
即可使用
更详细的信息:EL默认使用它,随后在页面、请求、会话和应用程序范围中扫描与给定属性名匹配的第一个下一个非空属性值
如果您想显式地指定不同作用域中具有相同名称的多个属性的情况下的作用域,那么通常的方法是使用${pageScope}
,${requestScope}
,${sessionScope}
或${applicationScope}
。例如
${requestScope.list}
另见:
Hmm,这不仅比${pageContext.request.attribute.list}容易,而且也能工作。非常感谢,不客气。我添加了更多的细节,以便您至少了解它在封面下的工作:)
${requestScope.list}