网页静态化技术Freemarker——demo(2)
程序员文章站
2022-04-29 20:57:38
...
动态生成FreeMarker静态页面
继上上一篇文章
https://blog.csdn.net/qq_44322555/article/details/103803821
上篇文章主要讲述了使用FreeMarker的网页静态化技术以及如何将后台的数据响应到FreeMarker的模板页面中,接下来所要介绍的是使用FreeMarker的网页静态化技术如何实现呢?
编写demo完成该例子
1、创建一个项目这里我创建的是一个maven项目
2、加入freeMarker的依赖包
<dependencies>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.23</version>
</dependency>
</dependencies>
3、在resources目录下创建FreeMarker的模板(test.ftl)
<html>
<head>
<meta charset="utf-8">
<title>Freemarker入门小DEMO </title>
</head>
<body>
<#--我只是一个注释,我不会有任何输出 -->
${name},你好。${message}
</body>
</html>
4、编写工具类生成html页面
package com.gu.demo;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
/**
* 动态生成freemarker模板页面
*/
public class Test {
public static void main(String[] args) throws IOException, TemplateException {
//创建配置类
Configuration configuration=new Configuration(Configuration.getVersion());
//设置模板所在目录
configuration.setDirectoryForTemplateLoading(
new File("D:/study/eleventh__idea/freemarker_demo/src/main/resources")
);
//设置字符集
configuration.setDefaultEncoding("UTF-8");
//加载resources下的FreeMarker模板
Template template = configuration.getTemplate("test.ftl");
//创建数据模型
Map<String,String> map = new HashMap<String, String>();
map.put("name","张三");
map.put("message","欢迎来到FreeMarker的世界");
//输出Writer对象
Writer writer = new FileWriter(new File("d:\\text.html"));
//输出
template.process(map,writer);
//关闭流
writer.close();
}
}
成功运行main方法之后,就会在对应路径下生成html文件了
这就是FreeMarker的基本使用,包括他的如何成为网页静态化的步骤,通过这两篇文章希望能够帮助到对FreeMarker的初学者;FreeMarker的功能以及他的作用起始不仅仅是这些,其实FreeMarker里面的一些其他知识点,比如指令在Free Marker页面中如何操作以及一些特殊的数据如何处理等等;
陆续更新吧,感谢您的欣赏!!!
上一篇: 创建型模式之工厂模式(2.2)