java 调用word插件_java一键生成word操作,比poi简单
[Java] 纯文本查看 复制代码package com.jeeplus.modules.fact.util;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.deepoove.poi.XWPFTemplate;
import com.deepoove.poi.data.NumbericRenderData;
import com.deepoove.poi.data.PictureRenderData;
import com.deepoove.poi.data.RenderData;
import com.deepoove.poi.data.TableRenderData;
import com.deepoove.poi.data.TextRenderData;
import cn.yygzs.common.config.Global;
import cn.yygzs.common.utils.DateUtils;
/**
* doc操作工具
* poi-ti
* [url=home.php?mod=space&uid=686208]@AuThor[/url] 遥大叔
* @projectName yygzs
* @packageName cn.yygzs.modules.fact.util
* [url=home.php?mod=space&uid=120849]@jdk[/url] 1.8.0_121
* [url=home.php?mod=space&uid=686237]@date[/url] 2018年5月26日下午10:34:09
* @version V1.0
* @describe
*/
public class DocUtil {
public static Logger logger = LoggerFactory.getLogger(DocUtil.class);
//存储模板路径common/css/yygzs.css
//public static final String template1="d:/testWord.docx";
/*
* win的路径
*/
public static final String template1=Global.getConfig("linuxUploadWord")+"/01_供应链ABS项目_付款确认书(共同债务人)20180426.docx";
public static final String template2=Global.getConfig("linuxUploadWord")+"/02_应收账款转让合同(适用于公开型无追索应收账款转让业务)20180426.docx";
public static final String template3=Global.getConfig("linuxUploadWord")+"/03供应链ABS项目_买方确认函(债务人确认债务)20180426.docx";
public static final String template4=Global.getConfig("linuxUploadWord")+"/04_供应链ABS项目_应收账款转让通知书(适用于供应商通知债务人)20180426.docx";
public static final String template5=Global.getConfig("linuxUploadWord")+"/05_供应链ABS项目_应收账款转让通知书(适用于保理商通知债务人)20180426.docx";
public static final String template6=Global.getConfig("linuxUploadWord")+"/06_应收账款转让登记协议.docx";
/*
* linux
*/
//public static final String template1=Global.getConfig("linuxUploadWord")+"/01_供应链ABS项目_付款确认书(共同债务人)20180426.docx";
//public static final String template2=Global.getConfig("linuxUploadWord")+"/02_应收账款转让合同(适用于公开型无追索应收账款转让业务)20180426.docx";
//public static final String template3=Global.getConfig("linuxUploadWord")+"/03供应链ABS项目_买方确认函(债务人确认债务)20180426.doc";
//public static final String template4=Global.getConfig("linuxUploadWord")+"/04_供应链ABS项目_应收账款转让通知书(适用于供应商通知债务人)20180426.docx";
//public static final String template5=Global.getConfig("linuxUploadWord")+"/05_供应链ABS项目_应收账款转让通知书(适用于保理商通知债务人)20180426.docx";
//public static final String template6=Global.getConfig("linuxUploadWord")+"/06_应收账款转让登记协议.docx";
/**
* 生成word文档
* @param docName 文件名:xx合同书
* @param templatePath 模板路径 例如:"d:/test.docx"
* @param map 写入的模板信息数据
* 案例:
* XWPFTemplate template = XWPFTemplate.compile("d:/test.docx").render(new HashMap(){{
put("title", "我爱遥遥科技");
}});
* @param response 下载请求
*/
public static void exmDoc(String docName,String templatePath,Map map,HttpServletResponse response) {
//生成文件名 例如:d:/out_template.docx
String fileName = Global.getConfig("linuxUploadDownLoad")+"/"+docName+".docx"; //win下面的路径
//String fileName = Global.getConfig("linuxUploadDownLoad")+"/"+docName+DateUtils.getDate("yyyyMMdd")+".docx"; //linux
//取出word模板
XWPFTemplate template = XWPFTemplate.compile(templatePath).render(map);
try {
//输出生成好的文件
FileOutputStream out = new FileOutputStream(fileName);
template.write(out);
logger.debug("生成成功");
//如果需要下载执行下一条代码
logger.debug("进入下载start");
//DocUtil.download(fileName, response);
logger.debug("进入下载end");
System.out.println();
out.flush();
out.close();
template.close();
logger.debug("关闭导出流成功");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
logger.error("出现异常:"+e);
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
logger.error("出现异常:"+e);
e.printStackTrace();
}
}
public static void main(String[] args) {
Map datas = new HashMap();
map.put("temp1","测试word模板1");
HttpServletResponse response=null;
exmDoc("测试生成word", template1, map, response);
}
}
java 调用word插件_java一键生成word操作,比poi简单相关推荐
- 利用VBA建立基金或者股票的实时净值和日线或者周线图并一键生成word文章
本人使用的是office 2016,其他可以参考该步骤进行即可 [完整项目工程:https://download.csdn.net/download/baobingji/85177201] 步骤1:新 ...
- java调用大漠插件一键搞定!!!!!!!!!!
本人java爱好者,最近想要通过java调用大漠插件,实现一些脚本.但是发现java调用大漠插件的文章在网上太少啦,自己经过长达一周的实践和测试,总算是可以通过java调用大漠插件了,也算是给小伙们避 ...
- Java中利用freemarker模板动态生成word含表格
最近公司有导出word的需求,由于word的样式有的很复杂所以记录一下Java中利用freemarker模板动态生成word含表格,以防以后忘记. 1.word表格的模板 删掉无用的数据留下基础的样式 ...
- Word中如何一键生成PPT,五个实用小技巧帮你工作效率翻倍
Word作为我们常用的文档工具,帮我们大大提高了工作效率,但是对于一个新手小白来说,Word中的大部分技巧都难以快速掌握.但是我们可以掌握一些必备的实用技巧,来提高我们的工作效率,比如小编就为大家带来 ...
- 在word表格中一键生成序号,如何操作?
在word表格中一键生成序号,如何操作? 目录 在word表格中一键生成序号,如何操作? 1.首先选中需要填序号的这一列 2.在[开始]菜单中找到[多级列表]点击,再点击[定义新的多级列表] 3. ...
- Python-生成word、docs文件[生成word文档]
Python-生成word.docs文件[生成word文档] 方法一:写入新建文档 安装第三方库 实现代码 运行结果 注意 方法二:运用模板写入word文档 安装第三方库 创建模板或修改模板 实现代码 ...
- Mybatis生成器插件扩展,生成OR操作
Mybatis生成器插件扩展,生成OR操作 ManExample example = new ManExample();ManExample.Criteria and = example.create ...
- Java Web项目中使用Freemarker生成Word文档
Web项目中生成Word文档的操作屡见不鲜,基于Java的解决方案也是很多的,包括使用Jacob.Apache POI.Java2Word.iText等各种方式,其实在从Office 2003开始,就 ...
- word论文排版插件_推荐一款强大的Word插件,一键搞定上万字论文的排版问题
每天12:18准时给大家惊喜!大家好!我是好奇仔,热衷于搜罗和分享各种好用.实用的软件神器和资源,有手机软件.办公软件.APP,还有网站资源-- Word作为Office办公软件三大利器之一,使用范围 ...
最新文章
- 文献管理软件 JabRef 快速入门
- CSP认证201509-3	模板生成系统[C++题解]:字符串处理、模拟、哈希表、引号里面有空格的字符串怎么读入
- Codeforces 848C. Goodbye Souvenir
- 009Linux密码故障排除
- C++与C#混合编程
- python对列表中的字典的字段进行排序
- 芒格:倒过来思考有利于理解事物本质并解决问题
- CUDNN下载速度慢解决方法
- matlab随机信号实验报告,随机信号分析实验报告(基于MATLAB语言)
- 生信技能树 电脑配置linux,生信技能树----Linux练习题答案
- STM32蜂鸣器驱动程序
- 总会用到的系列4:关键时刻能救家庭的保险
- 社交网络分析工具NetworkX和Gephi
- ForgivingExceptionHandler: An unexpected connection driver error occured (Exception message: Socket
- 基于Python+SQLSERVER的快递业务管理系统的设计与实现
- linux usb 打印机命令
- 使用变量时,单引号、双引号、反向单引号的区别
- 阿翔编程学-XFire
- linux开发stm32
- 基于jsp+servlet的javaweb实现最基本的用户注册登陆注销功能