使用freemarker填充模板生成文件并进行上传

本文介绍了一种后台使用Freemarker模板填充数据生成文件,并进行上传的场景。在该过程中,首先根据表单内容填充模板,然后创建临时文件,最后调用已封装的上传工具将文件上传。为了防止并发问题,每次生成不同的临时文件,上传完成后删除。文中还提及了ExportWordUtils的填充内容方法。
摘要由CSDN通过智能技术生成

场景: 后台给定一个标准文件模板, 在页面填写表单保存后, 根据内容填充模板生成一个文件, 然后将其上传.

因为上传功能涉及到一个文件夹配置等, 公司里面已经封装好一套工具, 需要给定一个File对象或者输入流对象和一些关联信息,调用方法即可. 所以这里有三个步骤 1.填充文件 2.生成一个临时文件 3.调用上传

第二步可以放一个固定文件, 每次填充都写到这个文件. 但这个如果有并发操作的话就会出现问题, 所以此处采用每次都生成一个临时文件,所有步骤完成后把临时文件删除. 下面上代码

private void buildAndUploadDoc(AuditSiteSurvey survey) throws IOException {
		Cost cost = costService.get(survey.getTaskId());
		String fileName = "test填充文档.doc";
		if(cost != null){
			fileName = cost.getName() + fileName;
		}
		Map<String, Object> templateParams = new HashMap<>();
		templateParams.put("cost", cost);
		templateParams.put("ass", survey);
		templateParams.put("curDate", DateUtil.formatYMD(new Date()));
        String strPath = SysVariable.get("SAVE_FILE_ROOT") + "/AuditSiteSurveyTemp";
        String tempFileName = "test填充文档" + System.currentTimeMillis()&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值