利用freemarker做html页面静态化
2014-02-08 16:20
302 查看
背景:
对实时性要求不高的网站需要静态化操作,那么我们基于freemarker做静态化处理
环境:
代码实现:
模板文件:news.ftl
Java封装类Article:
注意:此类必须为public否则报freemarker.core.InvalidReferenceException
测试实现:
说明:
此处采用了FileTemplateLoader,以D盘为根,写的html页面采用utf-8的编码
结果如下图:
已有 0 人发表留言,猛击->>这里<<-参与讨论
ITeye推荐
—软件人才免语言低担保 赴美带薪读研!—
对实时性要求不高的网站需要静态化操作,那么我们基于freemarker做静态化处理
环境:
<dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.20</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency>
代码实现:
模板文件:news.ftl
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title> ${article.title!} </title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> <h2> ${article.title!} </h2> <hr/> <pre> ${article.content} </pre> </body> </html>
Java封装类Article:
public class Article implements Serializable{ private static final long serialVersionUID = 554206256994693476L; private String title; private String content; public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } }
注意:此类必须为public否则报freemarker.core.InvalidReferenceException
测试实现:
public static void main(String[] ar) throws Exception, TemplateException { Configuration configuration = new Configuration(); configuration.setEncoding(Locale.getDefault(), "UTF-8"); TemplateLoader templateLoader = new FileTemplateLoader(new File("d:/")); configuration.setTemplateLoader(templateLoader); Template template = configuration.getTemplate("news.ftl"); template.setEncoding("UTF-8"); File file = new File("d:/news.html"); Map<String, Article> rootMap = new HashMap<String, Article>(); Article article = new Article(); article.setTitle("关于小网客"); article.setContent("解决方案咨询<br>大数据处理<br>系统架构<br>企业信息化咨询<br>Email:smallnetvisitor@qq.com<br>来自北京"); rootMap.put("article", article); Writer out = new OutputStreamWriter(new FileOutputStream(file), "UTF-8"); template.process(rootMap, out); }
说明:
此处采用了FileTemplateLoader,以D盘为根,写的html页面采用utf-8的编码
结果如下图:
已有 0 人发表留言,猛击->>这里<<-参与讨论
ITeye推荐
—软件人才免语言低担保 赴美带薪读研!—
相关文章推荐
- 【php】利用.htaccess文件使网站静态化,将php页面伪装成html
- 利用freemarker、java生成html静态页面
- 利用Freemarker生成html静态页面,也可利用模版功能生成不同格式的文件
- 关于freemarker静态化生成html页面 乱码的问题
- Spring与freemarker集成利用freemarker静态化页面
- freemarker html页面传参
- ASP静态化后,静态html页面点击计数解决方法
- 利用HTML的<meta>实现页面跳转
- 利用phantomjs+selenium抓取fund.eastmoney.com/fund.html网站第二页js生成的页面
- 利用freemarker 静态化网页
- 网上销售平台--Freemarker 页面静态化(九)
- springboot + freemarker 返回html页面基本操作(初学者)
- [HTML/JS]利用JQuery的load函数动态加载其它页面的内容的实现代码代替Ifram
- spring boot 使用velocity、freeMarker模板创建html页面返回给前端
- ASP静态化后,静态html页面点击计数解决方法
- 利用PHP的ob函数实现生成静态化页面
- [收藏]利用ASP.NET技术动态生成HTML页面
- jsp_首先利用纯HTML写一个简单的登录页面以及后台处理页面【代码】
- 如何利用cookie实现html页面的记住密码
- 利用freemarker 静态化网页