java 生成word/docx 总结(1)
最近有个任务,需要用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。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现