/**
* 生成静态文件.
*
* @param templateFileName
* 模板文件名,相对htmlskin路径,例如"/tpxw/view.ftl"
* @param propMap
* 用于处理模板的属性Object映射
* @param htmlFilePath
* 要生成的静态文件的路径,相对设置中的根路径,例如 "/tpxw/1/2005/4/"
* @param htmlFileName
* 要生成的文件名,例如 "1.htm"
* @param templateFilePath
* 模板路径
* @return boolean true代表生成文件成功
*/
@SuppressWarnings("unchecked")
public void createHtmlFile(String templateFileName, Map propMap,
String htmlFilePath, String htmlFileName, String templateFilePath) {
try {
Template t = this.getFreeMarkerCFG(templateFilePath).getTemplate(
templateFileName);
// 如果根路径存在,则递归创建子目录
this.creatDirs(htmlFilePath);
File afile = new File(htmlFilePath + "/" + htmlFileName);
Writer out = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(afile)));
t.process(propMap, out);
out.flush();
out.close();
} catch (TemplateException e) {
System.out.print(e.getMessage());
} catch (IOException e) {
System.out.print(e.getMessage());
} catch (Exception e) {
System.out.print(e.getMessage());
}
}
/**
* 获取freemarker的配置. freemarker本身支持classpath,目录和从ServletContext获取.
* @param templateFilePath
* @return Configuration 返回freemaker的配置属性
* @throws Exception
*/
private Configuration getFreeMarkerCFG(String templateFilePath)
throws Exception {
if (null == this.freemarker_cfg) {
this.freemarker_cfg = new Configuration();
try {
this.freemarker_cfg.setDirectoryForTemplateLoading(new File(
templateFilePath));
} catch (Exception ex) {
throw ex;
}
}
return this.freemarker_cfg;
}
/**
* 创建多级目录
* @param path
* @return boolean 是否成功
*/
private boolean creatDirs(String path) {
File aFile = new File(path);
if (!aFile.exists()) {
return aFile.mkdirs();
} else {
return true;
}
}
相关推荐
有关Java页面静态化
一个比较实用的页面静态化代码,可以很好地实现静态化的效果
php 页面静态化
ASP.NET 动态页面静态化,ASP.NET 动态页面静态化
php进行页面静态化的一个事例,包含数据库。
动态页面静态化技术,c#技术 动态页面静态化技术,c#技术
asp.net 动态页面静态化 asp.net 动态页面静态化
JSP页面静态化总结_动态页面变为静态页面以减少访问数据库的次数提高速度.zip
Java页面静态化视频教程,将动态化页面转为静态化页面,减少服务器压力
c# 页面静态化软件 v0.9,想要的朋友,可以看看,挺实用的。呵呵
URL重写 页面静态化 伪静态化,实现页面静态化。
ASP.NET页面静态化例子带数据库.rar
网站架构(页面静态化_图片服务器分离_负载均衡)方案全解析
PHP实现页面静态化 一、 开发环境 1、环境搭建:Windows 7+Apache 2.4.18+MySQL 5.7.11+PHP 7.1.0。 2、文本编辑器:Sublime 3。 二、主要技术 本案例主要使用PHP 7中的文件读写功能与ob缓存机制实现纯静态页面的...
最近一直在研究动态页面生成,汇总了网络的有效资源、方法,在这里分享一下,希望对后来做静态化的同仁有所帮助。也包括自己公司实际成熟的设计方案。
把你的JSP动态页面静态化。把你的JSP动态页面静态化。把你的JSP动态页面静态化。把你的JSP动态页面静态化。
前台页面的静态化就有利于SEO,所以这个问题摆在了我的面前,在网上一搜,关于这方面的资料不是很多,又很杂,关于这方面的知识,越来或多的程序员将会碰到,原来项目中这部分静态化的功能主要由我来做的,现在我将...
资源前后端分离式分布式微服务架构项目CMS页面静态化讲义+源码+视频 页面静态化需求 理解 理解页面静态化及页面发布流程图 FreeMarker研究 应用 能够编写Freemarker静态化测试程序 "理解模板加数据模型输出文本的...
包括使用freemarker和velocity两种技术来实现静态化。压缩包里面的文件有说明文档,说得很仔细,特别适合入门级别的人参考。还有freemarker和velocity开发所需要的jar包和插件。