如何在JSTL中实现"instanceOf"

Dre*_*mer 14 java jsp jstl

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

这样可以在主流的Web容器/服务器上运行?

谢谢.

JB *_*zet 20

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

但是instanceof,你应该很少在设计良好的OO程序中使用它,它应该在JSP EL中使用得更少,其中方法是动态调用的,不需要关注实际类型,并且最终目标应该只是生成标记.

  • 在tomcat 7中(所以使用JSP EL 2.2)你实际上可以做`$ {foo.getClass().name}`它可以工作...... (9认同)
  • 如果你想让它在Tomcat 6和7中都有效,你有两个选择: - 使用$ {foo ['class'].name},它适用于两个版本 - 或者配置Tomcat 7以接受旧格式 - Dorg.apache.el.parser.SKIP_IDENTIFIER_CHECK =真 (8认同)
  • 谢谢.但是`$ {foo.class.name}`似乎无法在Tomcat7下运行,直到额外的配置更改,遗憾的是我没有权限进入.类名检查发生在一个表tagx文件中,该文件适用于多个地方.但是现在对于特定的表我需要检查对象类名以输出其字段值.我不知道如何以更好的想法妥协. (2认同)