我想做这样的事情。
<c:set var="test_test">test</c:set>
<c:set var="test2">test_test</c:set>
现在我想从 test2 打印 test_test
<c:out value ="${{test2}}"/>
这行不通,但我想做这样的事情。
我有什么办法可以做到这一点?
如果您事先知道范围,则在使用大括号表示法传递动态键时直接使用范围映射。当在<c:set>没有明确指定scope属性的情况下使用 时,它最终会出现在页面范围内,这是一个可用的地图${pageScope},所以这应该适合你:
${pageScope[test2]}
请求、会话和应用程序范围映射可通过${requestScope}和${sessionScope}获得${applicationScope}。
如果我理解正确,您想test2使用 的值进行初始化test_test。如果是这样,你只需要
<c:set var="test2" value="${test_test}"/>
大致相当于下面的Java代码
Object test2 = test_test;
而如果要显示 的内容test2(也就是 的内容test_test),只需要
<c:out value="${test2}"/>