如何通过FreeMarker模板在对象上调用Java方法?

是否可以调用从Freemarker模板获取参数的方法?

我有一个对象模型,试图用Freemarker渲染到网页中。其中一个对象具有一种获取其内容的子列表的方法-采取用于过滤列表的参数:

public List getunits(final String type);

我知道在JSP中您不能直接执行此操作,但是您可以编写自定义函数来实现所需的结果。您如何在Freemarker中解决此问题?编写自定义函数是否一样?还是有某种实际调用这种功能的方法?

回答:

FreeMarker允许通过表达式从模型中调用可用的方法。

假设您的对象已公开,则myBean可以按如下所示调用方法:

<#list myBean.getunits("myType") as unit>

do stuff with ${unit}

</#list>

<list>当然,您不必使用,这只是一个示例,因为您的方法将返回一个列表。

以上是 如何通过FreeMarker模板在对象上调用Java方法? 的全部内容, 来源链接: utcz.com/qa/419626.html

回到顶部