网站首页 > 开源技术 正文
一、需求:
你们项目中,是否有这么一个需求,用户在你的应用页面中,选择填充一堆数据,然后点击确定生成,系统会因你填充的数据而生成一份对应的Word文档。比如下图是一个word文档,打开后是这样的内容,使得$符号是需要动态填充的数据,也就是前面需求所说的,把用户在你页面填写数据动态录入到以下文档(模板)中,然后生成的是一个完整的数据文档。
二、开发:
这里只介绍使用思路,要完成这个,需要引用一个Jar包,aspose-words-14.11.0.jar 。大家可以在网上下载,版本不一定需要我这个。要完成这个需求的思路是,首先需要有一个模板,也就是上面那种,模板内容自定义,就算是空白也行,但$符号至少要有一个。然后使用aspose-words的接口进入数据替换,把你接口的数据填充到对应的$符号中的位置上。最后是导出生成的文档。另外模板中的$符号只是点位符,可以是任意,只要跟接口是一样的即可。
1、controller层:我用的是spring boot+swagger。@apiParam只是接口参数,若没用swagger的可以按你们其他习惯写接口参数,这里使用Map进行文件存储,Map中的key是模板中所对应的点位符号
2、service层
三、测试阶段:
代码很简单,这样就算完成了,接着我使用Swagger进行测试一下
测试调用成功,以下就是生成出来的文档。为什么内容有下划线?原因就是模板中${content}是什么格式的,他替换的文字也会是什么格式,这样在你设计模板时,可以对他进行字体,颜色等进行初始化设置。如果有对Swagger感兴趣的,可以查看我另外写的一篇《在Spring Boot中如何配置Swagger》。后续会分享Doc转PDF,还有图片合成等技术。
猜你喜欢
- 2024-10-12 使用Aspose.Word将报表导出为Word文档
- 2024-10-12 SpringBoot 将外部引入的Jar包打进Jar包中
- 2024-10-12 在 Python 中将 HTML 转换为 PNG、JPEG、BMP、GIF 或 TIFF 图像
- 2024-10-12 为什么Aspose文档控件备受开发者喜欢?
- 2024-10-12 Word处理控件Aspose.Words如何在 Java 中将 DOC 或 DOCX 转换为 JPG
- 2024-10-12 文档开发工具Aspose.Wordsv20.9四大新功能演示
- 2024-10-12 Word处理控件Aspose.Words for Java 8月新版发布!支持Java 12
- 2024-10-12 Word文档管理首选工具Aspose.Words for .NET完整功能一览
- 2024-10-12 如何使用Aspose.Words以编程方式处理文档部分(1)
- 2024-10-12 Word控件Aspose.words在 Java 中,如何将 DOC 或 DOCX 转换为 JPG?
你 发表评论:
欢迎- 03-19基于layui+springcloud的企业级微服务框架
- 03-19开箱即用的前端开发模板,扩展Layui原生UI样式,集成第三方组件
- 03-19SpringMVC +Spring +Mybatis + Layui通用后台管理系统OneManageV2.1
- 03-19SpringBoot+LayUI后台管理系统开发脚手架
- 03-19layui下拉菜单form.render局部刷新方法亲测有效
- 03-19Layui 遇到的坑(记录贴)(layui chm)
- 03-19基于ASP.NET MVC + Layui的通用后台开发框架
- 03-19LayUi自定义模块的定义与使用(layui自定义表格)
- 最近发表
-
- 基于layui+springcloud的企业级微服务框架
- 开箱即用的前端开发模板,扩展Layui原生UI样式,集成第三方组件
- SpringMVC +Spring +Mybatis + Layui通用后台管理系统OneManageV2.1
- SpringBoot+LayUI后台管理系统开发脚手架
- layui下拉菜单form.render局部刷新方法亲测有效
- Layui 遇到的坑(记录贴)(layui chm)
- 基于ASP.NET MVC + Layui的通用后台开发框架
- LayUi自定义模块的定义与使用(layui自定义表格)
- Layui 2.9.11正式发布(layui2.6)
- Layui 2.9.13正式发布(layui2.6)
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)