diff --git a/ExcelUtil.java b/ExcelUtil.java new file mode 100644 index 0000000..c4f859c --- /dev/null +++ b/ExcelUtil.java @@ -0,0 +1,217 @@ +import java.io.IOException; +import java.io.OutputStream; +import java.lang.reflect.Field; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.poi.hssf.usermodel.HSSFWorkbook; +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; +import org.apache.poi.ss.usermodel.Workbook; + +/** + * 使用poi报表导出工具类 + * 把poi的一个调用接口抽出来,便于导出功能的管理 + * @author LiangXianYou lxy208@126.com + * @param + * + */ +public class ExcelUtil { + + /** + * 导出list中map做载体的数据到excel
+ * 参数说明:
+ * list:存放了Map数据的集合
+ * hdNames:表头列名
+ * hds:对应表头的数据KEY
+ * xlsName:导出文件名
+ * @author LiangXianYou + * @date 2015-6-25 上午10:22:51 + */ + public static boolean outPutExcelByMap(List> list, String[] hdNames, String[] hds, String xlsName, HttpServletRequest request, HttpServletResponse response) throws Exception{ + + Workbook wb = new HSSFWorkbook(); //创建工作薄 + Sheet sheet = wb.createSheet(); //创建工作表 + sheet.autoSizeColumn(( short ) 0 ); //自适应宽度 + //写入表头---Excel的第一行数据 + Row nRow = sheet.createRow(0); //创建行 + for(int i=0;i boolean outPutExcels(List> list,String xlsName, HttpServletRequest request, HttpServletResponse response) throws Exception{ + + Workbook wb = new HSSFWorkbook(); //创建工作薄 + for(int i=0;i map = list.get(i); + Sheet sheet = wb.createSheet(); //创建工作表 + String sheetName = (String) map.get("sheetName"); + wb.setSheetName(i, sheetName); + //写入表头---Excel的第一行数据 + Row nRow = sheet.createRow(0); //创建行 + String[] hdNames = (String[]) map.get("hdNames"); + for(int j=0;j data = (List) map.get("data"); + String[] hds = (String[]) map.get("hds"); + for(int j=0;j boolean outPutExcel(List list, String[] hdNames, String[] hds, String xlsName, HttpServletRequest request, HttpServletResponse response) throws Exception{ + + Workbook wb = new HSSFWorkbook(); //创建工作薄 + Sheet sheet = wb.createSheet(); //创建工作表 + sheet.autoSizeColumn(( short ) 0 ); //自适应宽度 + //写入表头---Excel的第一行数据 + Row nRow = sheet.createRow(0); //创建行 + for(int i=0;i