POI动态生成数据并删去多余模版

本文介绍如何使用POI库动态创建一个Excel模版,模版包含两页,分别为记账联和客户联,每组数据对应两页。模版中包含页首标记和对账ID替换功能。此外,当数据量确定后,模版会自动生成至少数据条数两倍的页面,并在完成后删除多余的空白页,以确保高效利用资源。


需求:

1、生成一个模版,记账形式,一组分为两页,第一联“记账联”,第二联“客户联”。

2、设置标记:"$页首",表示新的一页;"对账ID",替换成ID。

3、这样的一组两页尽可能生成更多,至少满足于最多的数据条数的2倍(因为一条数据分别插入两页中);然后删除多余的空白页。



package doc;

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.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

import org.apache.poi.xwpf.usermodel.BodyElementType;
import org.apache.poi.xwpf.usermodel.IBodyElement;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import po.HTDZPZ;
import util.DbUtil;
/**
 * XWPF 生成docx
 * @author founder
 * @time 2017-12-13
 */
public class WordDocx {

	/**
	 * POI XWPF 根据模板生成记账单
	 * 
* author:os.liuqiang *
* 2017-12-12 * @param sourceFile 源路径文件 * @param newsf 新路径生成文件 * @param whereStr 数据表的条件语句 * @param zdr
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值