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();

        }

    }

}

 

 

 

 

poi读取、通过poi导出数据库的记录到excl表的更多相关文章

  1. 如何使用mysqldump命令导入导出数据库下的数据或表结构(远程or本地都适合)

    不多说,直接上干货! https://www.cloudera.com/documentation/manager/5-1-x/Cloudera-Manager-Installation-Guide/ ...

  2. apache poi 读取xlsx并导出为json(没考虑xls)

    1.用到的jar包:fastjson-1.2.9.poi(poi-3.15.poi-ooxml-3.15.poi-ooxml-schemas-3.15.xmlbeans-2.6.0.commons-c ...

  3. linux导入导出数据库方法 windows导入导出数据库方法

    1.使用管理员账号(sys)登录查询字符集信息 第一步:查询LinuxOracle数据库的字符集 select userenv('language') from dual; 查询结果集可能为:AMER ...

  4. SpringMVC 实现POI读取Excle文件中数据导入数据库(上传)、导出数据库中数据到Excle文件中(下载)

    读取Excale表返回一个集合: package com.shiliu.game.utils; import java.io.File; import java.io.FileInputStream; ...

  5. POI读取Excel数据保存到数据库,并反馈给用户处理信息(导入带模板的数据)

    今天遇到这么一个需求,将课程信息以Excel的形式导入数据库,并且课程编号再数据库中不能重复,也就是我们需要先读取Excel提取信息之后保存到数据库,并将处理的信息反馈给用户.于是想到了POI读取文件 ...

  6. jsp+servlet+poi导出数据库中的数据

    index.jsp: <a href="POIout">简单导出数据</a> <a href="POIoutTemplate"&g ...

  7. Poi读取Excle报错 java.util.zip.ZipException: invalid stored block lengths

    一:Poi读取Excle报错  java.util.zip.ZipException: invalid stored block lengths 系统中需要导出excle签收单,excle模板是预设好 ...

  8. apache POI 操作excel<导入导出>

    1.首先导入maven依赖 <!-- POI核心依赖 --> <dependency> <groupId>org.apache.poi</groupId> ...

  9. lucent检索技术之创建索引:使用POI读取txt/word/excel/ppt/pdf内容

    在使用lucent检索文档时,必须先为各文档创建索引.索引的创建即读出文档信息(如文档名称.上传时间.文档内容等),然后再经过分词建索引写入到索引文件里.这里主要是总结下读取各类文档内容这一步. 一. ...

随机推荐

  1. MySQL添加、删除索引

    1.索引类型 UNIQUE(唯一索引):不可以出现相同的值,可以有NULL值: INDEX(普通索引):允许出现相同的索引内容: PROMARY KEY(主键索引):不允许出现相同的值: fullte ...

  2. Linux开机自启动脚本

    将需要开机自启动的脚本命令写在文件/etc/rc.d/rc.local中即可. 比如需要开机自启动MySql和Apache,则在/etc/rc.d/rc.local文件尾部加入两行命令: system ...

  3. PostMan测试接口,绕过登录验证

    之前测试的时候,需要页面进行登录之后,才能让访问后台程序,但是在进行接口测试的时候,没有验证就一直登录不进去,之后参考了一篇文章.解决如下. 1.在浏览器上先登录,登录成功后获取cookie: 记住J ...

  4. c++ 指针访问数组

    用指针访问一维数组 用指针访问二维数组 用指针访问三维数组 一. 用指针访问一维数组 //代码 ; ]={,}; int *p=&a; //int *p=&a[0]; printf(& ...

  5. PCA人脸识别的python实现

    这几天看了看PCA及其人脸识别的流程,并在网络上搜相应的python代码,有,但代码质量不好,于是自己就重新写了下,对于att_faces数据集的识别率能达到92.5%~98.0%(40种类型,每种随 ...

  6. HTML5和CSS基础

    1 HTML 基本语法 html标签 单标签 <img /> .<img> 双标签 <html> </html> 属性 属于标签 <img src ...

  7. SQL Server 查询请求

    当SQL Server 引擎接收到用户发出的查询请求时,SQL Server执行优化器将查询请求(Request)和Task绑定,并为Task分配一个Workder,SQL Server申请操作系统的 ...

  8. react-native初体验(2) — 认识路由

    如果学习止步于 hello world, 那么人生也太没意思了.这次要做一个看起来真实的应用.多添加几个页面,让他们可以交互,动起来. react-native 官方推荐使用 react-naviga ...

  9. mac上搭建appium+IOS自动化测试环境(二)

    上一篇: mac上搭建appium+IOS自动化测试环境(一) 9.安装appium-xcuitest-driver依赖 进入WebDriverAgent安装目录,运行bootstrap 首先进入目录 ...

  10. SICP读书笔记 3.4

    SICP CONCLUSION 让我们举起杯,祝福那些将他们的思想镶嵌在重重括号之间的Lisp程序员 ! 祝我能够突破层层代码,找到住在里计算机的神灵! 目录 1. 构造过程抽象 2. 构造数据抽象 ...