参考文章 
[url]https://wenku.baidu.com/view/4126bc8071fe910ef12df854.html[/url] 
[url]http://blog.sina.com.cn/s/blog_4d6be6f30101fd67.html[/url] 
[url]https://www.yangqiu.cn/xwzhongchou/1441843.html[/url] 
 
实例代码 
package com.test;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import net.sf.jxls.exception.ParsePropertyException;
import net.sf.jxls.transformer.XLSTransformer;
public class TestJxlsExportReport {
	public static void main(String[] args) throws ParsePropertyException, InvalidFormatException, IOException {
		// TODO Auto-generated method stub
		String templateFileName = "D:\\excel\\temp.xls";
		String destFileName = "D:\\excel\\out.xls";
		File file = new File(destFileName);
		if(file.exists())
		file.delete();
		List<Department> departments = ddd();
		Map<String,List<Department>> beans
		= new HashMap<String,List<Department>>();
		beans.put("departments", departments);
		XLSTransformer transformer = new XLSTransformer();
		transformer.transformXLS(templateFileName, beans,destFileName);
	}
	public static List<Department> ddd(){
		List<Department> dlist = new ArrayList<Department>();
		Department ds = new Department();
		ds.setName("人力资源部");
		ds.setDesc("XXX");
		ds.setData1(1);
		ds.setData2(8);
		dlist.add(ds);
		Chief cf = new Chief();
		cf.setName("张三");
		cf.setAge(18);
		cf.setPayment("1");
		cf.setBonus("2");
		ds.chief.add(cf);
		cf = new Chief();
		cf.setName("李四");
		cf.setAge(20);
		cf.setPayment("3");
		cf.setBonus("4");
		ds.chief.add(cf);
		Employee e = new Employee();
		e.setName("王五");
		e.setAge(30);
		e.setBonus(30.25f);
		e.setPayment(63.66f);
		ds.staff.add(e);
		e = new Employee();
		e.setName("Tom");
		e.setAge(4);
		e.setBonus(10.25f);
		e.setPayment(23.66f);
		ds.staff.add(e);
		ds = new Department();
		ds.setName("行政部");
		ds.setDesc("yyyy");
		ds.setData1(7);
		ds.setData2(9);
		dlist.add(ds);
		cf = new Chief();
		cf.setName("张三");
		cf.setAge(18);
		cf.setPayment("1");
		cf.setBonus("2");
		ds.chief.add(cf);
		cf = new Chief();
		cf.setName("李四");
		cf.setAge(20);
		cf.setPayment("3");
		cf.setBonus("4");
		ds.chief.add(cf);
		e = new Employee();
		e.setName("王五");
		e.setAge(30);
		e.setBonus(30.25f);
		e.setPayment(63.66f);
		ds.staff.add(e);
		e = new Employee();
		e.setName("Tom");
		e.setAge(4);
		e.setBonus(10.25f);
		e.setPayment(23.66f);
		ds.staff.add(e);
		return dlist;
	}
}
