使用ftl编辑模板动态导出word表格时候踩的坑
【1】简单说一下操作过程,使用word编写模板,然后另存为xml格式,再用文本编辑器按正常格式打开,复制代码就ok了(不细说,网上大佬一堆)
【2】因为要将数据库中的数据批量导出,所以用到了 list map 类型进行循环输出,关于ftl中list\map\listmap的使用推荐https://blog.csdn.net/zengmingen/article/details/52025224(其他的基础标签推荐https://blog.csdn.net/Asa_Prince/article/details/82017976)
【3】数据循环后要合并单元格,合并单元格的语句为<w:vmerge w:val="restart"/>和<w:vmerge/>需要注意的地方:
<1>放置位置:合并单元格语句需要放置在需要和并列的<w:tcPr>标签内部,单元格开始合并的第一行需要放置<w:vmerge w:val="restart"/>语句,其余的则放置<w:vmerge/>语句,(并不是只在首行和末行放置合并语句),
<2>顺序问题,因为在数据库输出的数据顺序不一定,如果只是对含有特定数值的数据放置特定的单元格合并语句,顺序错乱后会失效,所以最好在获取数据的时候按特定字段排个序
<3>合并单元格语句本身,<w:vmerge w:val="restart"/>和<w:vmerge/>,一定是这样写,网上很多写的都是<w:vMerge w:val="restart"/>和<w:vMerge/>, 【m】千万不要大写,否则无效,在这个坑里呆了好久,引以为戒。
第一次使用ftl进行文本导出,记录一下