1.工具类
package com.hand.util;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFPalette;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.ss.util.CellRangeAddress;
import com.hand.pojo.ComplianceAlarm;
/**
* 导出Excel公共方法
*
* @version 1.0
*
* @author zsj
*
*/
public class ExportExcel {
// 显示的导出表的标题
private String title;
// 导出表的列名
private String[] rowName;
private List<ComplianceAlarm> dataList = new ArrayList<ComplianceAlarm>();
HttpServletResponse response;
// 构造方法,传入要导出的数据
public ExportExcel(String title, String[] rowName, List<ComplianceAlarm> dataList) {
this.dataList = dataList;
this.rowName = rowName;
this.title = title;
}
/*
* 导出数据
*/
public void export(String fileName,List<Integer> columnWidthList, HttpServletRequest request, HttpServletResponse response) throws Exception {
try {
HSSFWorkbook workbook = new HSSFWorkbook(); // 创建工作簿对象
HSSFSheet sheet = workbook.createSheet(title); // 创建工作表
HSSFPalette palette = workbook.getCustomPalette(); //wb HSSFWorkbook对象
//设置颜色
//标题
palette.setColorAtIndex((short)10, (byte) (0xff & 27), (byte) (0xff & 102), (byte) (0xff & 142));
//列名
palette.setColorAtIndex((short)11, (byte) (0xff & 243), (byte) (0xff & 243), (byte) (0xff & 243));
//偶数行
palette.setColorAtIndex((short)12, (byte) (0xff & 235), (byte) (0xff & 243), (byte) (0xff & 255));
//列宽设置
for(int i =0;i<columnWidthList.size();i++){
sheet.setColumnWidth(i, columnWidthList.get(i));
}
//设置行高
sheet.setDefaultRowHeightInPoints(20);
// 产生表格标题行
HSSFRow rowm = sheet.createRow(0);
HSSFCell cellTiltle = rowm.createCell(0);