freemarker调用Java的静态方法和对象方法及long类型千分位

Freemarker: call a static util method from a template file (*.ftl) - Stack Overflowhttps://stackoverflow.com/questions/39082563/freemarker-call-a-static-util-method-from-a-template-file-ftl

Apache FreeMarker 中文手册 - Bean wrapper | Docs4devhttps://www.docs4dev.com/docs/zh/freemarker/2.3.28/reference/pgui_misc_beanwrapper.htmlApache FreeMarker Manual - 2.3.30 | Docs4devhttps://www.docs4dev.com/docs/en/freemarker/2.3.28/reference/versions_2_3_30.html#autoid_150Java BeansWrapper.getStaticModels方法代码示例 - 纯净天空Java BeansWrapper.getStaticModels方法代码示例,freemarker.ext.beans.BeansWrapper.getStaticModels用法https://vimsky.com/examples/detail/java-method-freemarker.ext.beans.BeansWrapper.getStaticModels.html

【调用静态方法】

java:

public static Object getStaticModels(){
    Version version = Configuration.DEFAULT_INCOMPATIBLE_IMPROVEMENTS;//getVersion();
    BeansWrapper wrapper = new BeansWrapper(version);
    TemplateHashModel statics = wrapper.getStaticModels();
    return statics;
}
Object statics = FreemarkerUtils.getStaticModels();
dataMap.put("statics",statics);

ftl:

<#assign IdUtil=statics['com.chipmunk.IdUtil']>
<#assign id=IdUtil.getId()?c>

【调用对象方法】

Java:

dataMap.put("user",new User());

ftl:

${user.getName()}

【long类型千分位转换】

id是long类型,解决千分位的都好,<#assign id=IdUtil.getId()?c>,增加?c

【FTL stack trace ("~" means nesting-related): - Failed at: #if type】

<#if type> ..... </#if>

FTL stack trace ("~" means nesting-related): - Failed at: #if type

<#if type> 改为<#if type??>或者添加下面

yml:

spring:
  freemarker:
    settings:
      classic_compatible: true

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值