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

Nur*_*ini 19 java jsp jstl el

如果我设置这样的会话:

<% 
session.setAttribute("taintedAttribute", "what ever we want");
%>
Run Code Online (Sandbox Code Playgroud)

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

${sessionScope.taintedAttribute }
Run Code Online (Sandbox Code Playgroud)

但是,如果我想这样做怎么样

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

那么我们如何在EL中调用它?

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

如果我这样做:

<c:set var="name" value="taintedAttribute" />
<c:out value="${sessionScope.[name]}"/>
Run Code Online (Sandbox Code Playgroud)

该名称将替换taintedAttribute为与此行相同

${sessionScope.taintedAttribute}
Run Code Online (Sandbox Code Playgroud)

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

Bal*_*usC 27

<c:set var="name" value="taintedAttribute" />
<c:out value="${sessionScope.[name]}"/>
Run Code Online (Sandbox Code Playgroud)

你很亲密 删除期间.

<c:set var="name" value="taintedAttribute" />
<c:out value="${sessionScope[name]}"/>
Run Code Online (Sandbox Code Playgroud)

也可以看看: