- 写实际逻辑
定义一个类,实现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())将指令标签中的内容输出
- 声明自定义指令
需要在spring配置文件中为FreeMarkerConfigurer这个bean配置
<property>
<map>
<entry key="指令名称" value-ref="TemplateDirectiveModel的实现类"/>
</map>
</property>
- 调用格式
<@指令名 入参key1="入参value1" 入参key2="入参value2" ....; result1 , result2, result3
</@指令名>
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。