有没有办法在freemarker模板中获取对象的类名?
例如:
<#if component.javaType.class.name.equals("test") >
"something...."
</#else>
"something else ...."
</#if>
谢谢
答案 0 :(得分:2)
没有内置功能,但根据配置设置和对象类型,这可能有效:
<#if component.class.name == 'com.example.Something'>
这是有效的,因为component.foo
在Java中只是意味着comonent.getFoo()
,所以上面只是component.getClass().getName()
。但是,如果component
的JavaBean属性未公开,则这不起作用(假设通常的FreeMarker配置)是String
- s的情况,{{1} } -s,Number
- s,Map
- s和更多&#34;标准&#34;类。如果List
可以是这样的对象,但无论如何比较都应该是假的,你可以写component
。