Freemarker静态化加载模板的三种方式

JSON 2016-08-22 15:01:33 13539

Freemarker  提供了三种加载模板目录的方法。 它使用Configuration 类加载模板

三种方法分别是:

1.public void setDirectoryForTemplateLoading(File dir) throws IOException;

2.public void setClassForTemplateLoading(Class clazz, String pathPrefix);

3.public void setServletContextForTemplateLoading(Object servletContext, String path);

第一种:以文件的绝对路径加载

Configuration cfg = new Configuration();  
cfg.setDirectoryForTemplateLoading(new File("/opt/user/template"));

第二种:以类文件的路径加载

Configuration cfg = new Configuration();  
cfg.setClassForTemplateLoading(FreemarkerUtil.class, "/template");

第三种:基于WEB服务器的路径加载

Configuration cfg = new Configuration();  
cfg.setServletContextForTemplateLoading(servletContext, "/user/template"); 

注意一下第二个参数需要以 "/" 开头

同时加载多个模块的模板

//系统模板路径  
Configuration cfg = new Configuration();  
WebappTemplateLoader wtl =  new WebappTemplateLoader(servletContext,"");  
WebappTemplateLoader wt2 =  new WebappTemplateLoader(servletContext,"/"+SystemConstants.SITE_ROOT+"/"+siteCode);  
TemplateLoader[] loaders = new TemplateLoader[] { wtl, wt2};  
MultiTemplateLoader mtl = new MultiTemplateLoader(loaders);  
cfg.setTemplateLoader(mtl);  

版权所属:SO JSON在线解析

原文地址:https://www.sojson.com/blog/152.html

转载时必须以链接形式注明原始出处及本声明。

本文主题:

如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。

关于作者
一个低调而闷骚的男人。
相关文章
最新文章
TCP 和 UDP协议详细讲解,优缺点分析讲解 3669
URL中乱七八糟的字符讲解,来源以及如何解决 1792
HTTP/3 来了,您真的了解它么? 3383
技术选型:为什么批处理我们却选择了Flink 1118
这些表情包你有吗?一起来 Battle 啊 1314
当我谈 HTTP 时,我谈些什么? 9778
新浪短链(t.cn)最新申请官方API的方法讲解。 53986
QUIC / HTTP3 协议详细分析讲解 6160
恭喜那个做云存储的七牛云完成 F 轮 10 亿人民币的融资,开启新的云旅程 7372
Autojs怎么安全加密?Autojs在线加密工具注意事项。 26223
最热文章
苹果电脑Mac怎么恢复出厂系统?苹果系统怎么重装系统? 609779
最新MyEclipse8.5注册码,有效期到2020年 (已经更新) 535884
我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比 474635
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报 449040
Elasticsearch教程(四) elasticsearch head 插件安装和使用 347409
Jackson 时间格式化,时间注解 @JsonFormat 用法、时差问题说明 332019
谈谈斐讯路由器劫持,你用斐讯路由器,你需要知道的事情 189214
Java 信任所有SSL证书,HTTPS请求抛错,忽略证书请求完美解决 177726
Elasticsearch教程(一),全程直播(小白级别) 165266
免费天气API,天气JSON API,不限次数获取十五天的天气预报 145119
支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

查看我的收藏

正在加载... ...