如何在EL中使用动态密钥获取会话属性?

2023-12-26

如果我像这样设置会话:

<% 
session.setAttribute("taintedAttribute", "what ever we want");
%>

通常我们可以在 EL 中获取这样的会话变量

${sessionScope.taintedAttribute }

但如果我想这样做怎么样

<% 
String name = "taintedAttribute";
//session.setAttribute(name, "what ever we want");
session.getAttribute(name);
%>

那我们在EL中怎么调用呢?

EL 可以得到类似的东西吗${sessionScope.---dynamic name ---}?

如果我这样做:

<c:set var="name" value="taintedAttribute" />
<c:out value="${sessionScope.[name]}"/>

该名称将被替换为taintedAttribute和这条线一样

${sessionScope.taintedAttribute}

那可能吗?我怎样才能做到这一点?


<c:set var="name" value="taintedAttribute" />
<c:out value="${sessionScope.[name]}"/>

你很接近。删除句号。

<c:set var="name" value="taintedAttribute" />
<c:out value="${sessionScope[name]}"/>

也可以看看:

  • 我们的 EL 维基页面 https://stackoverflow.com/tags/el/info
  • Java EE 6 教程 - EL 表达式示例 http://docs.oracle.com/javaee/6/tutorial/doc/bnaim.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在EL中使用动态密钥获取会话属性? 的相关文章

随机推荐