• poi读取、通过poi导出数据库的记录到excl表


    package com.nt.test;

     

    import java.io.File;

    import java.io.FileInputStream;

    import java.io.FileNotFoundException;

    import java.io.IOException;

    import java.util.Iterator;

     

    import org.apache.poi.hssf.usermodel.HSSFCell;

    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.poifs.filesystem.POIFSFileSystem;

     

    public class TestPOI {

    //    public static void main(String[] args) {

    //        File file=new File("D://nt/question/1/木工.xls");

    //        try {

    //            FileInputStream fint=new FileInputStream(file);

    //            POIFSFileSystem poifsFileSystem=new POIFSFileSystem(fint);

    //            HSSFWorkbook workbook=new HSSFWorkbook(poifsFileSystem);

    //            HSSFSheet sheet=workbook.getSheetAt(0);

    //            

    //            

    //            Iterator rows=sheet.rowIterator();

    //            //得到总行数

    //            int rowtotalnumber=sheet.getLastRowNum();

    //            System.out.println("rowtotal=========="+rowtotalnumber);

    //            while (rows.hasNext()) {

    //                HSSFRow row=(HSSFRow) rows.next();

    //                int rownumber=row.getRowNum();

    //                //当前行数

    //                System.out.println("rownumber------"+rownumber);

    //                

    //                //当前行的列数

    //                int lie=row.getPhysicalNumberOfCells();

    //                System.out.println("lie============"+lie);

    //                

    //                

    //                Iterator cells=row.cellIterator();

    //                

    //                while(cells.hasNext()){

    //                    HSSFCell cell=(HSSFCell) cells.next();

    //                    

    //                    //列好 从0开始

    //                    int cellnumber=cell.getCellNum();

    //                    System.out.println("cellnumber----"+cellnumber);

    //                    System.out.println(getCellStringValue(cell));

    //                }

    //            }

    //        } catch (FileNotFoundException e) {

    //            e.printStackTrace();

    //        } catch (IOException e) {

    //            e.printStackTrace();

    //        }

    //    }

        

          

     

    public static String getCellStringValue(HSSFCell cell) {

    String cellValue = "";

    switch (cell.getCellType()) {

    case HSSFCell.CELL_TYPE_STRING://字符串类型

    cellValue = cell.getStringCellValue();

    if(cellValue.trim().equals("")||cellValue.trim().length()<=0)

    cellValue=" ";

    break;

    case HSSFCell.CELL_TYPE_NUMERIC: //数值类型

    cellValue = String.valueOf(cell.getNumericCellValue());

    break;

    case HSSFCell.CELL_TYPE_FORMULA: //公式

    cell.setCellType(HSSFCell.CELL_TYPE_NUMERIC);

    cellValue = String.valueOf(cell.getNumericCellValue());

    break;

    case HSSFCell.CELL_TYPE_BLANK:

    cellValue=" ";

    break;

    case HSSFCell.CELL_TYPE_BOOLEAN:

    break;

    case HSSFCell.CELL_TYPE_ERROR:

    break;

    default:

    break;

    }

    return cellValue;

    }

     

    }

     

     

     

     

     

     

     

    通过poi导出数据库的记录到excl表

     

     

    package com.test.daotest;

     

    import java.io.FileNotFoundException;

    import java.io.FileOutputStream;

    import java.io.IOException;

    import java.util.Iterator;

    import java.util.List;

     

    import org.apache.poi.hssf.usermodel.HSSFRow;

    import org.apache.poi.hssf.usermodel.HSSFSheet;

    import org.apache.poi.hssf.usermodel.HSSFWorkbook;

    import org.hibernate.Session;

    import org.hibernate.Transaction;

     

    import com.test.model.Question;

    import com.test.until.HibernateSessionFactory;

     

    public class ExportQuestion {

        public static void main(String[] args) {

            int id=14;

             try {

                HSSFWorkbook wb=new HSSFWorkbook();

                 FileOutputStream fileout = new FileOutputStream("test"+id+".xls");

                 wb.write(fileout);

                

                 HSSFSheet sheet=wb.createSheet("new sheet");

                 //通过Hibernate来查询addressbook_table表中的数据,将其存储在List中

                     Session s=HibernateSessionFactory.getSession();

                 Transaction tx = s.beginTransaction();

                 org.hibernate.Query query= s.createQuery("from Question q where q.majorId="+id);

                 List list = query.list();

                 tx.commit();

                 int k =0;

     

                 //创建表格,创建表格行和单元格,将数据库中表的字段存储在单元格中.

                 for(Iterator it=list.iterator();it.hasNext();){

                 Question q =(Question)it.next();

                 HSSFRow row=sheet.createRow((short)k);

                 row.createCell((short)0).setCellValue(1);

                 row.createCell((short)1).setCellValue(q.getQuestion());

                 row.createCell((short)2).setCellValue(q.getOptionA());

                 row.createCell((short)3).setCellValue(q.getOptionB());

                 row.createCell((short)4).setCellValue(q.getOptionC());

                 row.createCell((short)5).setCellValue(q.getOptionD());

                 row.createCell((short)6).setCellValue(q.getAnswer());

                 row.createCell((short)7).setCellValue(q.getMajorId());

                 row.createCell((short)8).setCellValue(0);

                 row.createCell((short)9).setCellValue(0);

                 k++;

                 }

                 FileOutputStream fileout1 = new FileOutputStream("test"+id+".xls");

                 wb.write(fileout1);

                

                 fileout1.close();

     

     

            } catch (FileNotFoundException e) {

                e.printStackTrace();

            } catch (IOException e) {

                e.printStackTrace();

            }

        }

    }

     

     

     

     

  • 相关阅读:
    PHP网络编程
    traits的使用
    在Apache中使用mod_rewrite模块重写URL
    Lamp下安全配置随笔
    微信开发准备工作
    SQL SERVER技术内幕之7 透视与逆透视
    MVP开发模式的理解
    SQL SERVER技术内幕之5 表表达式
    SQL SERVER技术内幕之4 子查询
    SQL Server Management Studio
  • 原文地址:https://www.cnblogs.com/chengzhipcx/p/4872198.html
Copyright © 2020-2023  润新知