开发者

velocity (test instanceof)

How can I test the class of a given object in a velocity template. I can't f开发者_运维知识库ind an instanceof directive


There is no instanceof, but you can get class name as a string and then go from there:

${myObj.class.name} would return "com.test.MyObj"
${myObj.class.simpleName} would return "MyObj"


In Java you can set this variable

    [VelocityValuesMap].put("TestClass", TestClass.class);
    [VelocityValuesMap].put("myObject", myObject);

and inside the velocity template you can do this

($TestClass.isAssignableFrom($myObj.getClass()))

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜