package org.springboot.sample.config.viewresolver.view; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; import org.apache.poi.ss.usermodel.IndexedColors; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.web.servlet.view.document.AbstractXlsView; /** * Excel视图输出 * * @author 单红宇(365384722) * @myblog http://blog.csdn.net/catoop/ * @create 2016年2月27日 */ public class XlsView extends AbstractXlsView { @Override protected void buildExcelDocument(Map<String, Object> model, Workbook workbook, HttpServletRequest request, HttpServletResponse response) throws Exception { Sheet sheet = workbook.createSheet("sheet1"); CellStyle style = workbook.createCellStyle(); style.setFillForegroundColor(IndexedColors.GREY_40_PERCENT.index); style.setFillPattern(CellStyle.SOLID_FOREGROUND); style.setAlignment(CellStyle.ALIGN_CENTER); Row row = null; Cell cell = null; int rowCount = 0; int colCount = 0; // 创建头部 row = sheet.createRow(rowCount++); cell = row.createCell(colCount++); cell.setCellStyle(style); cell.setCellValue("ID"); cell = row.createCell(colCount++); cell.setCellStyle(style); cell.setCellValue("NAME"); // 创建数据 row = sheet.createRow(rowCount++); colCount = 0; // 这里为了测试,实际应用中,我们从model中读取值 row.createCell(colCount++).setCellValue("100"); row.createCell(colCount++).setCellValue("xiaoshan"); for (int i = 0; i < 3; i++){ sheet.autoSizeColumn(i, true); } } }