第一步就是将World文档里面需要从数据库填充的部分用占位符替换
第二步:就是将此文档保存为Xml格式
第三步:将其放在resource目录下,并选中此文件,右键点击properties属性,将其编码格式设置为Utf-8(防止生成之后乱码)
第四步:将此文件后缀名改为ftl
第五步:需要导入freemarker相关jar包
<!-- freemarker开始 -->
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.23</version>
</dependency>
<!-- freemarker结束 -->
第六步:开始写java代码,我这是写的一个测试类,当然你也可以和spring整合在一起
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
public class Test {
public static void main(String[] args) throws IOException, TemplateException {
//1.创建配置类
Configuration configuration = new Configuration(Configuration.getVersion());
//2.设置模板所在的目录
configuration.setDirectoryForTemplateLoading(new File("C:/Eclipse_Workspace/jttx_record/src/main/resources"));
//C:\Eclipse_Workspace\jttx_record\src\main\resources\test.ftl
//3.设置字符集
configuration.setDefaultEncoding("utf-8");
//4.加载模板
Template template = configuration.getTemplate("tt.ftl");
//5.创建数据模型
Map map=new HashMap();
map.put("name", "甄士隐 ");
map.put("date","贾不假,白玉为堂金做马,阿房宫,三百里,住不下金陵一个史,东海缺少白玉床,龙王请来金陵王,丰年好大雪,珍珠如土金如铁,贾不假,白玉为堂金做马,阿房宫,三百里,住不下金陵一个史,东海缺少白玉床,龙王请来金陵王,丰年好大雪,珍珠如土金如铁");
//6.创建 Writer 对象
Writer out =new FileWriter(new File("C:\\Users\\jttx_record\\Desktop\\tt.doc"));
//7.
template.process(map, out);
//8.关闭 Writer 对象
out.close();
}
}
至此:java使用模板引擎导出World文档到此结束