TemplateDirectiveModel接口是freemarker自定标签或者自定义指令的核心处理接口。通过实现该接口,用户可以自定义标签(指令)进行任意操作,、 任意文本写入模板的输出。
该接口中只定义了如下方法,当模板页面遇到用户自定义的标签指令时,该方法会被执行。
public void execute(Environment env, Map params, TemplateModel[] loopVars,
TemplateDirectiveBody body) throws TemplateException, IOException;
@param env:系统环境变量,通常用它来输出相关内容,如Writer out = env.getOut();
@param params:自定义标签传过来的对象,其key=自定义标签的参数名,value值是TemplateModel类型,而TemplateModel是一个接口类型,通常我们都使用TemplateScalarModel接口来替代它获取一个String 值,如TemplateScalarModel.getAsString();当然还有其它常用的替代接口,如TemplateNumberModel获取number,TemplateHashModel等
@param loopVars 循环替代变量
@param body 用于处理自定义标签中的内容,如<@myDirective>将要被处理的内容</@myDirective>;当标签是<@myDirective />格式时,body=null
==========================================
下面将详细讲解如何用java实现自定义标签
第一步:freemarker基本配置
Configuration cfg = new Configuration();
第二步:获取模板
Template tt = cfg.getTemplate("你定义的ftl模板的位置", "UTF-8");
第三部:
分享到:
相关推荐
IPv6详解IPv6详解IPv6详解IPv6详解IPv6详解IPv6详解IPv6详解IPv6详解
curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令详解curl命令...
SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解SEO详解
IOC详解IOC详解IOC详解IOC详解IOC详解IOC详解IOC详解IOC详解
Oracle详解Oracle详解Oracle详解Oracle详解
udhcp源码详解 udhcp源码详解 udhcp源码详解 udhcp源码详解
端口详解 端口详解 端口详解 端口详解 端口详解
C# 之泛型详解,学习泛型的好文章...
dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解dm分区详解...
DLT698.45之APDU详解.xlsx
JavaScript 之Ajax详解JavaScript 之Ajax详解JavaScript 之Ajax详解
IPV6详解 详解详解详解,不看不知道,看了全知道!!!
jstl标签详解jstl标签详解jstl标签详解jstl标签详解jstl标签详解jstl标签详解jstl标签详解
JDBC详解 JDBC详解JDBC详解 JDBC详解JDBC详解 JDBC详解
C语言设计实例详解C语言设计实例详解C语言设计实例详解C语言设计实例详解
Caffe之经典模型详解与实战 高清阴影版本,书籍是一本关于caffe实战的书,内容齐全。上传为PDF版,内容清晰,希望有助于大家学习参考。
JQuery详解JQuery详解JQuery详解JQuery详解JQuery详解JQuery详解
ajax详解ajax详解ajax详解 ajax详解ajax详解ajax详解 ajax详解ajax详解ajax详解 ajax详解ajax详解ajax详解
OSPF详解OSPF详解OSPF详解OSPF详解OSPF详解
uboot详解 uboot详解 uboot详解 uboot详解