最近有个任务,需要用java生成WORD 文档,运行环境在linux上。于是,自己在网上找了好多资料,总结下来做个分享。后面也会对常用的几个建立几个demo供大家参考。主要分为以下几个部分:
1. 概述
2. poi demo
3. freemarker demo
4. poi-template demo
5. 总结
1. 概述
生成方式一般有两种方式,分别为通过代码完全构建word文档,包括格式,相对比较麻烦,但是可定制程度高。一种通过模板方式构建。另外一些方法是基于windows中office相关组件,在linux上可能就不好用或者需要安全额外软件。基本情况如下:
序号 |
方式 |
方案 |
优势 |
缺点 |
备注 |
1 |
代码 |
Jacob,winlib |
功能强大 |
无法跨平台,需要windows支持,代码量大,设置繁琐 |
|
2 |
Apache poi |
纯Java组件,跨平台,定制性高,Excel文件,可以读写Word和PPT、Excel |
操作麻烦 |
http://deepoove.com/poi-tl/apache-poi-guide.html |
|
3 |
Java2word |
功能强大 |
需要windows支持 |
||
4 |
itext |
功能全,满足基本要求 |
操作麻烦,和poi有点像,只能生成rtf格式的文件,不是真正的word文件格式 |
qq_35212203/article/ details/109849941 |
|
5 | 模板 |
Xml(freemarker) |
XML操作,跨平台,模板方式 |
较复杂,需要理解XML结构,需要定制模板 |
qq_46319694/article/details /123380836 |
6 |
poi-tl |
纯Java组件,跨平台,模板引擎功能,对poi进行封装,直接操作docx模板 |
需要定制模板 |
http://deepoove.com/poi-tl/ |
接下来几个章节,我会针对Xml(freemarker)、poi-tl、poi方式进行讲解,并提供相关demo。
标签:docx,java,demo,tl,跨平台,poi,word,模板 From: https://www.cnblogs.com/hungryquiter/p/16949613.html