【问题标题】:How to convert dynamic scriptlets to JSP 2.0 with JSTL/EL?如何使用 JSTL/EL 将动态脚本转换为 JSP 2.0?
【发布时间】:2011-09-07 14:59:25
【问题描述】:

我需要从请求中获取一个动态命名的变量。这适用于 scriptlet 形式,但我不希望页面被 scriptlet 弄得乱七八糟。

<%
    String requestValueKey = "something_" + request.getParameter("State") + "_" + request.getParameter("UUID");    
    String requestValue = request.getParameter(requestValueKey);
%>

我想将它切换到 JSTL,但我不知道如何提出一个动态命名的会话值键,它依赖于会话中的其他值。

【问题讨论】:

    标签: jsp jstl el scriptlet


    【解决方案1】:

    使用&lt;c:set&gt; 准备动态键,并使用大括号[] 通过动态键获取值。

    <c:set var="requestValueKey" value="something_${param.State}_${param.UUID}" />
    

    那么你就可以在页面的剩余部分通过${param[requestValueKey]}获取。

    【讨论】:

    • 谢谢。从技术上讲,我的答案保持不变。