【freemaker实现导出word①】创建xml/ftl模板

发布于 2017-10-25  约 3 分钟

在javaweb项目中,往往很多时候需要我们实现将数据导出到word文档中,但是导出word首要做法就是创建模板,没有模板,请求出来的数据就没有可以存放和显示的地方。导出的模板需要xml或者ftl格式的文件。

新建word文档,然后按照自己想要的进行设计相应模板结构,填入关键字,然后另存为xml,打开xml代码文件,将关键字的位置修改为相应的字段格式:${data}
模板如下:

clipboard.png

(1)打开xml代码,修改关键位置的数据,这时候需要有格式化代码的工具,才能看到规整的代码,推荐使用sublime的格式化工具,需要安装,参照sublime格式化
clipboard.png
像上图关键数据的位置,编写模板的时候会造成${a.item1}这个部分中间会有其他乱七八糟的代码,把他们中间其他的都删掉,这个变量要完整才能请求到最后数据。
clipboard.png

(2)list遍历循环输出的话要在每一行前后加上<#list 你的数据list as 转换的变量名></#list>,相当于前段li标签的遍历循环输出一样,找到循环的行,加上这个list就行了
clipboard.png

(3)图片的话,在模板里面先加入图片占位,打开xml文档,图片所在的位置会有一大串base64编码,将图片形成的一大串base64编码改成图片的数据变量,如${image}
clipboard.png
像上图那样一大串白色的就是上面说的图片base64编码,把他们都删掉替换成图片的变量就可以了

因为到这里文件里面加入的<#list 你的数据list as 转换的变量名></#list>属于非法写法,还有图片的base64编码没了,所以到这里的xml文档就无法用word打开查看最终样式了。

到这里导出word的模板就编辑完成了。代码实现导出word请看后续文章。

觉得有用的朋友们看在本仙女这么辛苦分享的份上赏赐个赞呗^_^

阅读 5.2k发布于 2017-10-25

推荐阅读

关于我在前端开发的一些经验分享,其实我是个主要学习前端的,但是工作的性质让我不得不也要爬一爬javaw...

14 人关注
21 篇文章
专栏主页
目录