freemarker自定义指令

  1. 写实际逻辑
定义一个类,实现TemplateDirectiveModel这个借口

重写  execute(Environment env,Map params,TemplateModel[] loopVars,TemplateDirectiveBody body) 方法
//第一个参数: Environment env环境变量
//第二个参数: Map params 入参保存在这个map中
//第三个参数: TemplateModel[] loopVars 返回值,这个返回值必须用freemarker的数据类型
//要返回值,直接loopVars[0] = xxx;loopVars[1] = yyy;就行了
//第四个参数: 一般用body.render(env.getOut())将指令标签中的内容输出
  1. 声明自定义指令
    需要在spring配置文件中为FreeMarkerConfigurer这个bean配置

    
        
    

  1. 调用格式
<@指令名 入参key1="入参value1" 入参key2="入参value2" ....; result1 , result2, result3


你可能感兴趣的:(freemarker自定义指令)