有没有什么方法可以使用 EL 和 JSTL 在对象上调用 toString()? (我需要枚举的字符串表示作为 JSP EL 表达式中映射中的索引。)我希望像 ${''+object}
这样的东西能像在 java 中一样工作,但 EL 不是那很好,而且似乎没有任何功能可以做到这一点。
说明:我有一个将字符串映射到字符串的变量 somemap
,还有一个枚举变量 someenum
。我想做类似 ${somemap[someenum.toString()]}
的事情。 (当然 .toString() 不起作用,但是什么起作用呢?)
最佳答案
你只需这样做:
${object}
它会为您toString
。
编辑:您的嵌套表达式可以这样解析:
<c:set var="myValue">${someenum}</c:set>
${somemap[myValue]}
第一行字符串化(使用toString()
)${someenum}
表达式并将其存储在myValue
变量中。第二行使用 myValue
来索引 map 。
关于java - 如何使用EL + JSTL将任意对象转换为String? (调用 toString()),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2883726/