word生成freemarker模板 并下载

java后台生成word技术选型

所用技术 优点 缺点
Jacob 功能强大 代码量大,设置样式繁琐;需要windows平台支持,无法跨平台
Apache POI 读写excel功能强大、操作简单 一般只用它读取word,能够创建简单的word,不能设置样式,功能太少
Java2word 功能强大,操作简单 能满足一般要求,不支持07格式,国人开发的,参考资料较多,需要windows平台支持
iText 功能全,能满足一般要求 不能直接生成或操作doc文档,只能生成rtf格式的文档,rtf也可以用word打开
JSP 操作简单,代码量少 能把当前页面导出简单的word,不能设置样式,美观性差,无法操作word
XML(最佳) 代码量少,样式、内容容易控制,打印不变形,完全符合office标准 需要提前设计好word模板,把需要替换的地方用特殊标记标出来

综上此文以XML为例

java后台生成word是编写好word后,添加占位符,对编辑好的文件另存为xml格式文件。把xml格式文件放入项目中,利用freemarker生成word文件,并下载.

freemarker引入项目

此次用的版本是freemarker-2.3.23.jar
可自行下载,或者maven导入

word生成xml模板

word2010编辑好文档,插入xml语法支持的变量,另存为xml格式文件保存。(word从2003开始支持xml格式,所以从03版word都可以保存为xml格式文档)

编写word
在这里插入图片描述
插入变量
在这里插入图片插入变量描述
word编辑完成,保存为xml格式文档,以我自己使用的word2010为例。

注:如果另存为的xml文件格式乱码,则需要在word中设置为utf-8编码保存。设置保存编码位置:文件-选项-高级-滚动滚轮找到 Web选项并点击进入-选择编码,按如下图进行设置点击确定。此时xml文档编码为utf-8,项目编码也设置为utf-8即可。

word编码设置截图
在这里插入图片描述

另保存为xml文件时的截图
在这里插入图片描述

改写生成的xml模板

word生成为xml文档后,会出现原本在一起的变量被分开了,如图,此时需将图中蓝色部分删掉。届时模板文件已经做好了。
在这里插入图片描述

后台代码

此后台代码为网页端下载word,如需下载到硬盘可另行改写代码

package com.demo.controller;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值