利用poi进行对excel导出

本文详细介绍使用Java和POI库进行Excel单表导出的方法,包括创建Workbook、添加Sheet、设置样式、写入表头及数据等步骤,适用于从数据库获取数据并导出为Excel的场景。

单表导出演示

public  static void crateexcel(){
    //单表导出
    try{
        // 第一步,创建一个webbook,对应一个Excel文件
        HSSFWorkbook wb = new HSSFWorkbook();
        // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheets
        HSSFSheet sheet = wb.createSheet("人员信息");
        // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
        HSSFRow row = sheet.createRow((int) 0);
        // 第四步,创建单元格,并设置值表头 设置表头居中
        HSSFCellStyle style = wb.createCellStyle();
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
        //设置列的宽度
        sheet.setColumnWidth(4, 3000);
        sheet.setColumnWidth(5, 3000);
        sheet.setColumnWidth(8, 3000);
        sheet.setColumnWidth(9, 3000);
        
        for(int j =1;j<8;j++){
            sheet.setColumnWidth(9+j, 3500);
        }
        
        
        HSSFCell cell = row.createCell(0);
        cell.setCellValue("编号");
        cell.setCellStyle(style);
        cell = row.createCell(1);
        cell.setCellValue("姓名");
        cell.setCellStyle(style);
        cell = row.createCell(2);
        cell.setCellValue("密码");
        cell.setCellStyle(style);
        cell = row.createCell(3);
        cell.setCellValue("性别");
        cell.setCellStyle(style);
        cell = row.createCell(4);
        cell.setCellValue("年龄");
        cell.setCellStyle(style);
        cell = row.createCell(5);
        cell.setCellValue("住址");
        
        // 第五步,写入实体数据 实际应用中这些数据从数据库得到,
        List<Look> lists = Look.findAll();
         
         for(int i =0;i<lists.size();i++){
             row = sheet.createRow((int) i + 1);
             // 第四步,创建单元格,并设置值
             String no = lists.get(i).no;
             String name = lists.get(i).name;
             String pwd = lists.get(i).pwd;
             String sex = lists.get(i).sex;
             String age = lists.get(i).age;
             String address = lists.get(i).address;
             row.createCell(0).setCellValue(no);
             row.createCell(1).setCellValue(name);
             row.createCell(2).setCellValue(pwd);
             if("1".equals(sex)){
                 row.createCell(3).setCellValue("男");
             }else{
                 row.createCell(3).setCellValue("女");
             }
             row.createCell(5).setCellValue(age);
             row.createCell(6).setCellValue(address);
         }
        // 第六步,将文件存到指定位置
         FileOutputStream fout = new FileOutputStream( "C:/cc/workbook1.xls");
         wb.write(fout);
         fout.close();
        
         renderText("1");
     } catch (Exception e) {
     e.printStackTrace();
     renderText("-1");
     }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值