如何在 JSTL 中实现“instanceOf”

问题描述 投票:0回答:2

或者说获取类名或获取类型名

这样可以在主要流行的 Web 容器/服务器上工作吗?

谢谢你。

java jsp jstl
2个回答
21
投票

${foo.class.name}
返回
foo
的完全限定名称。

但是

instanceof
已经是你在设计良好的 OO 程序中很少使用的东西了,在 JSP EL 中应该更少使用它,在 JSP EL 中动态调用方法而不关心实际类型,并且最终目标应该只是生成标记。


0
投票

如果你想要对象

foo
的类,你可以使用
${foo.getClass()}
*。这允许您使用
Class
的名称 getters
之一获取其类名称,例如 getSimpleName()。例如,如果
foo
String
,则
${foo.getClass().simpleName}
将打印“String”。

*:如果您的目标至少是 Servlet 3.0 容器,例如 Tomcat 7+、Glassfish 3+、JBoss AS 6+ 等,并且

web.xml
至少符合 Servlet 3.0。

© www.soinside.com 2019 - 2024. All rights reserved.