携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第29天,点击查看活动详情
1.写在前面
很多时候,我们可能需要根据一个word模板,动态生成,我们所需要得一个word文档。
那这里,通过word模板生成word文档,我之前写过一个案例: [word模板数据填充并转pdf]
这个案例得word模板,有什么弊端呢?我们来看一下这个word模板,格式如下:
这样得一个word模板,我之前得做法是 替换段落文本
,那会有啥问题?
- 文本的格式可能会丢失。
- 替换内容标识,可能会读取不到(单词别隔开)。
- 无法动态循环输出一个list集合。
- table表格无法做到动态输出。
当然啦,因为我们之前的业务功能比较简单,使用之前的 替换段落文本
方式,也是能实现到,所以就一直没有去研究,有无更好的方式。
嘿,随着业务功能的不断深入,动态list集合,动态table,这些功能也要求要实现了。
那我们作为一个程序员,这不得深入研究嘛?
巧了,哥们这几天,也研究了一个方式,可以实现动态list集合,动态table的渲染,那就是 freemarker模板引擎 。
好了,废话不多说,直接进入主题了!!!
2.freemarker实现
首先说一下实现步骤:通过将word模板,另存为 .xml
格式,然后将 .xml
文件后缀改成 .ftl
,然后再使用freemarker模板引擎