【三十二】springboot+freemarker实现按模板导出word

 

互相交流入口地址

整体目录:

【一】springboot整合swagger

【二】springboot整合自定义swagger

【三】springboot整合token

【四】springboot整合mybatis-plus

【五】springboot整合mybatis-plus

【六】springboot整合redis

【七】springboot整合AOP实现日志操作

【八】springboot整合定时任务

【九】springboot整合redis实现启动服务时热点数据保存在全局和缓存

【十】springboot整合quartz实现定时任务优化

【十一】springboot整合异步调用并获取返回值

【十二】springboot整合WebService

【十三】springboot整合WebService关于传参数

【十四】springboot整合WebSocket

【十五】springboot整合WebSocket实现聊天室

【十六】RabbitMQ基础篇(下载安装并基础使用,内含各种坑问题)

【十七】RabbitMQ基础篇(延迟队列和死信队列实战)

【十八】springboot实现自定义全局异常处理

【十九】初学Kafka并实战整合SpringCloudStream进行使用

【二十】springboot整合ElasticSearch实战(万字篇)

【二十一】springboot整合过滤器实战

【二十二】springboot整合拦截器实战并对比过滤器

【二十三】springboot整合activiti7(1)实战演示篇

【二十四】springboot整合spring事务详解以及实战

【二十五】springboot使用EasyExcel和线程池实现多线程导入Excel数据

【二十六】springboot整合jedis和redisson布隆过滤器处理缓存穿透

【二十七】springboot实现多线程事务处理

【二十八】springboot之threadLocal参数解析器实现session一样保存当前登录功能 

【二十九】springboot整合logback实现日志管理

【三十】springboot项目上高并发解决示例

【三十一】springboot+easyExcel实现多文件导出压缩包

目录

一、准备模板文件

二、编写代码

三、演示效果 


        场景:现在系统想将个人基本信息数据按照简历模板导出,简历模板是word,前面我们有几章使用easyExcel导出了excel数据,这章就记录一下导出word,本章将采用freemarker的方式。

一、准备模板文件

        假设这就是业务方提供给我们的模板(网上随便找的免费的),我们需要按该格式进行填充数据,那么我们首先需要将改文件进行预处理一下,改为ftl文件。

        1、先改造文件内容

        列表按照${xx.xx}的格式,普通属性按照${xx}的格式。

        2、改造完内容后将文件另存为xml文件

        3、将文件后缀改为ftl

        4、复制文件到项目中

        5、针对demo中的遍历集合进行特殊处理

        打开ftl模板文件,根据需要遍历的行的模板关键字,例如${postList.post}找打该行位置,并找打最接近的<w:tr>标签(该标签代表行标签<w:tr></w:tr>)。如下图:

        找到该行之后,用list标签将其包住,类似jsp的写法。将所有的列表都处理一下,我们在这个例子中需要处理两处。

        这个完成后准备工作就完成了。

二、编写代码

        随便拿一个以前的demo项目进行代码填空。

        1、引入依赖

        2、准备点假数据(小demo懒得连数据库)

        3、代码填空(每一步的注释已经写清楚了)

三、演示效果 

        若有帮助,感谢三连。​,欢迎评论区谈论。

评论 48
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小z♂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值