java freemarker下载_Java导出freemarker实现下载word文档格式功能

首先呢,先说一下制作freemarker模板步骤,

1. 在WPS上写出所要的下载的word格式当做模板

2. 把模板内不固定的内容(例:从数据库读取的信息)写成123或者好代替的文字标注

3. 把固定模板另存为htm或者html格式

4. 用文本编辑器(例:EditPlus,HBuilder等工具)打开模板,并将标注内容替换成 ${要获取的字段} 这种格式,类似于传参数,可以传多个参数

5. 将修改后的模板保存,并将后缀名改为ftl格式。至此  我们的freemarker模板就大功告成了

PS:   最好将建好的模板放到文件夹内,方便统一管理。

如果是web项目,模板之类的最好放在/WEB-INF/下,不是web项目的话最好放在classpath下。

其次,就是将制作好的模板导入到项目里的步骤了

1. 第一步肯定是把制作好的模板放到指定的路径并且导入freemarker的jar包,这个是毋庸置疑的吧

2. 我们需要在Spring配置文件内加上以下这么一段代码

0

GBK

zh_CN

3. 接下来我们就要编写我们的下载模板类啦(在这里我采用了数据库加载模式加载我们的Freemarker模板文件)

a9539183fe40d788cb71b1ec8e802ee9.png

100bb8fe15be98b429ade2c7fbeb3d7f.png

如上图所示  我们的调用模板也就写好啦,接下来的就是方法的调用和添加参数问题了

4. 方法的调用和添加参数

添加参数:

private void getData(MapdataMap) {

String param1= " 参数一 ";

String param2= " 参数二 ";

... 参数有几个就创建几个

dataMap.put("param1", param1);

dataMap.put("param2", param2);

... 参数有几个就添加几个

List> list = new ArrayList>();for (int i = 0; i < list.size(); i++) {

Map map = new HashMap();

map.put("number", i);

map.put("content", "内容"+i);

list.add(map);

dataMap.put("list", list);

}

}

方法调用:

public void downLoad(Map dataMap)throwsException {

getData(dataMap);

String templateName= "pinggu.ftl"; //模板文件名

String filePath = "D:/downLoad"; //输出文档路径

String fileName = "评估意见.docx"; //输出文件名称

String modelPath = request.getSession().getServletContext().getRealPath("/") + "WEB-INF/template/ftl/"; //模板文件路径

CancerUtil.createDoc(dataMap,fileName,templateName,filePath,modelPath);

}

至此  我们的实现下载word文档格式功能就完成了  下一章呢,我想写一下我对加载freemarker模板路径三个方法的理解和认识,希望大家指出我的错误

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值