Excel 导出

maven:

<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.9</version>
</dependency>

 List<AgentDetailBeanImpl> agentList =  agentInfoBeanMapper.selectAgentList(ca.getUserName(),
                ca.getPhone(),ca.getStatus(),ca.getStartTime(),ca.getEndTime(),null);


        //定义表头
        String titles[]={"序号","姓名","电话","性别","身份证","添加时间","审核状态"};
        //创建工作薄
        HSSFWorkbook workbook=new HSSFWorkbook();
        //创建sheet页
        HSSFSheet sheet=workbook.createSheet();
        //创建默认行高
        sheet.setDefaultRowHeightInPoints(30);
        sheet.setDefaultColumnWidth(15);

        HSSFCellStyle style = workbook.createCellStyle();
        // 设置样式
        style.setFillForegroundColor(HSSFColor.SKY_BLUE.index);
        style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
        style.setBorderBottom(HSSFCellStyle.BORDER_THIN);
        style.setBorderLeft(HSSFCellStyle.BORDER_THIN);
        style.setBorderRight(HSSFCellStyle.BORDER_THIN);
        style.setBorderTop(HSSFCellStyle.BORDER_THIN);
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER);

        HSSFFont font = workbook.createFont();
        font.setColor(HSSFColor.VIOLET.index);
        font.setFontHeightInPoints((short) 12);
        font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
        // 把字体应用到当前的样式
        style.setFont(font);

        //创建第一行表头行
        HSSFRow rowHead = sheet.createRow(0);
        //创建空的单元格
        HSSFCell cell=null;
        //添加表头
        for(int i=0;i<titles.length;i++){
            cell=rowHead.createCell(i);
            cell.setCellStyle(style);
            //表头中插入值
            cell.setCellValue(titles[i]);
        }

        //添加数据
        for(int i=0;i<agentList.size();i++){
            AgentDetailBeanImpl agentDetailBean = agentList.get(i);
            //新建一行
            HSSFRow nextRow = sheet.createRow(i+1);
            //第i+1行 第一列
            cell = nextRow.createCell(0);
            cell.setCellValue(i+1);

            cell = nextRow.createCell(1);
            cell.setCellValue(agentDetailBean.getName());
            //第i+1行 第二列
            cell = nextRow.createCell(2);
            cell.setCellValue(agentDetailBean.getPhone());
            //第i+1行 第三列
            cell = nextRow.createCell(3);

            Integer sex = agentDetailBean.getSex();
            if(sex == 0){
                cell.setCellValue("未知");
            }
            if(sex == 1){
                cell.setCellValue("男");
            }
            if(sex == 2){
                cell.setCellValue("女");
            }
            //第i+1行 第三列
            cell = nextRow.createCell(4);
            cell.setCellValue(agentDetailBean.getIdentity());

            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            cell = nextRow.createCell(5);
            cell.setCellValue(sdf.format(agentDetailBean.getCreateTime()));

            cell = nextRow.createCell(6);
            switch(agentDetailBean.getStatus()){
                case 1:

                    cell.setCellValue("通过");
                    break;
                case 4:
                    cell.setCellValue("不通过");
                    break;
                default:
                    cell.setCellValue("未审核");
                    break;
            }


        }
 //创建文件
        try {
            FileOutputStream fos = new FileOutputStream("D:\\用户信息.xls");
            //写出文件
            workbook.write(fos);
            //刷新关闭输出流
            fos.flush();
            fos.close();

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }catch (IOException e) {
            e.printStackTrace();
        }

 

posted @ 2021-05-14 16:18  南国的刘新  阅读(43)  评论(0编辑  收藏  举报