JAVA生成word优缺点对比
所用技术 | 优点 | 缺点 |
Jacob | 功能强大 | 代码量大,设置样式繁琐;需要windows平台支持,无法跨平台 |
Apache POI | 读写excel功能强大、操作简单 | 一般只用它读取word,能够创建简单的word,不能设置样式,功能太少 |
Java2word | 功能强大,操作简单 | 能满足一般要求,不支持07格式,国人开发的,参考资料较多,需要windows平台支持 |
iText | 功能全,能满足一般要求 | 不能直接生成或操作doc文档,只能生成rtf格式的文档,rtf也可以用word打开 |
JSP | 操作简单,代码量少 | 能把当前页面导出简单的word,不能设置样式,美观性差,无法操作word |
XML(最佳) | 代码量少,样式、内容容易控制,打印不变形,完全符合office标准 | 需要提前设计好word模板,把需要替换的地方用特殊标记标出来 |
JAVA生成pdf优缺点对比
所用技术 | 优点 | 缺点 |
openoffice | 本身就是office软件,很容易设计一些文档模板,支持java调用实现word转换成pdf | 需要先安装,设计好pdf模板样式,然后用程序来填充那些预留好的变量 |
itext | 能满足要求,本身提供了一些api | 无法识别很多html的tag和attribute,无法识别css,需要用其api函数来设置样式 |
Jasper Report | 能满足要求,市面上使用的比较多,相关文档多 | 复杂,很难完全掌握,需要先设计模板,强依赖于IDE进行可视化编辑 |
flying sauser(最佳) | 能解析html和css输出成image、pdf等格式,操作简单,api强大 | 需要编写freemarker或velocity模板,打造html,勾画pdf的样式 |
用到时,根据需求选择相对应的技术