是不是可以用EL直接调用session.getAttribute()?

时间:2015-06-10 09:26:17

标签: jsp el session-scope

'电子邮件'的价值使用

在会话范围内设置
session.setAttribute("email", "john@gmail.com").

要稍后显示该值,请使用以下代码

<c:out value='${session.getAttribute("email")}'> </c:out>

这在屏幕上没有输出。请注意,导入了必要的包,并且没有产生错误。

但是,如果我使用scriptlet重新编写:<% out.print(session.getAttribute("email")); %>,我会获得所需的输出。

为什么在使用EL表达式时没有session.getAttribute()工作?

2 个答案:

答案 0 :(得分:1)

在EL中,您可以使用sessionScope${sessionScope.EMAIL}对象访问会话变量。

答案 1 :(得分:0)

  

我的问题是为什么session.getAttribute()在使用时不起作用   JSTL标签?

通过EL在jsp中获取会话属性的正确方法是

<c:out value='${sessionScope.EMAIL}'/>

你搞乱了JSTL&amp; scriptlet代码,你可以试试

email: <%= session.getAttribute("EMAIL") %>