java 下载excel_Java下载excel

这段代码展示了如何使用Apache POI库在Java中创建一个HSSFWorkbook对象,并填充数据生成Excel文件,然后通过HttpServletRequest和HttpServletResponse下载。它包含了初始化样式、创建标题、表头和数据行的方法,并自动调整列宽。
摘要由CSDN通过智能技术生成

1 packagecom.base.utils;2

3 importjava.io.IOException;4 importjava.io.OutputStream;5 importjava.text.DecimalFormat;6 importjava.text.SimpleDateFormat;7 importjava.util.Date;8 importjava.util.LinkedHashMap;9 importjava.util.List;10

11 importjavax.servlet.http.HttpServletRequest;12 importjavax.servlet.http.HttpServletResponse;13

14 importorg.apache.poi.hssf.usermodel.HSSFCell;15 importorg.apache.poi.hssf.usermodel.HSSFRow;16 importorg.apache.poi.hssf.usermodel.HSSFSheet;17 importorg.apache.poi.hssf.usermodel.HSSFWorkbook;18 importorg.apache.poi.ss.usermodel.BorderStyle;19 importorg.apache.poi.ss.usermodel.CellStyle;20 importorg.apache.poi.ss.usermodel.Font;21 importorg.apache.poi.ss.usermodel.HorizontalAlignment;22 importorg.apache.poi.ss.usermodel.IndexedColors;23 importorg.apache.poi.ss.usermodel.VerticalAlignment;24 importorg.apache.poi.ss.util.CellRangeAddress;25 importorg.slf4j.Logger;26 importorg.slf4j.LoggerFactory;27

28 importcom.base.utils.sysenum.ExcelExportEnum;29

30 public classExcelExportUtil {31

32 protected static Logger logger = LoggerFactory.getLogger(ExcelExportUtil.class);33

34 private static CellStyle titleStyle; //标题行样式

35 private static Font titleFont; //标题行字体

36 private static CellStyle headStyle; //表头行样式

37 private static Font headFont; //表头行字体

38 private static CellStyle contentStyle; //内容行样式

39 private static Font contentFont; //内容行字体

40

41 /**

42 * 初始化HSSFWorkbook43 *44 * @Method_Name : init45 *@returnHSSFWorkbook46 */

47 private staticHSSFWorkbook init() {48 HSSFWorkbook wb = newHSSFWorkbook();49

50 titleFont =wb.createFont();51 titleStyle =wb.createCellStyle();52 headStyle =wb.createCellStyle();53 headFont =wb.createFont();54 contentStyle =wb.createCellStyle();55 contentFont =wb.createFont();56

57 initTitleCellStyle();58 initTitleFont();59 initHeadCellStyle();60 initHeadFont();61 initContentCellStyle();62 initContentFont();63 returnwb;64 }65

66 /**

67 * 根据数据集合生成excel文件并下载68 *69 * @Method_Name : downloadExcel70 *@paramexcelExportEnum excel文件名称,工作簿和生成的内容标题都用这个名称71 *@parammap 列名与集合中实体类属性的对应关系72 *@paramlist 需要导出的数据集合73 *@return

74 *@throwsException75 *@return

76 */

77 public static void downloadExcel(HttpServletRequest request, HttpServletResponse response,ExcelExportEnum excelExportEnum, LinkedHashMap map, List> list) throwsException {78

79 //第一步,创建一个webbook,对应一个Excel文件

80 HSSFWorkbook wb =init();81 //第二步,在webbook中添加一个sheet,对应Excel文件中的sheet

82 HSSFSheet sheet =wb.createSheet(excelExportEnum.getTypeName());83

84 int columnNum =map.keySet().size();85 String[] colNames = (St

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值