上一节介绍了Java将数据库表中数据导出至Excel表格,那么本节来介绍它的逆过程,也就是将Excel表格中的数据逐行导入数据库中的表中,依然需要使用Apache的POI,上一节已经说过也附了这个jar包的下载地址,这一节就不过多的说,直接讲如何将Excel表格中的数据逐行导入数据库中的表中,还是放代码。
public static void main(String[] args) {
HSSFWorkbook book;
try {
book = new HSSFWorkbook(new FileInputStream("E:/axls/blogs.xls"));
HSSFSheet sheet=book.getSheet("表");
//得到表格的第一行
HSSFRow row=sheet.getRow(0);
Iterator<Cell> ite=row.cellIterator();
while(ite.hasNext()){
HSSFCell cell=(HSSFCell)ite.next();
String cname=cell.getStringCellValue();
System.out.print(cname);
System.out.print(",");
}
System.out.println("\n");
System.out.println("---------------------------------------");
//得到表格的其他行,即不包括第一行
Iterator<Row> it= sheet.rowIterator();
while(it.hasNext()){//遍历所有行
row=(HSSFRow)it.next();
ite=row.cellIterator();
while(ite.hasNext()){//遍历当前行的所有列
HSSFCell cell=(HSSFCell)ite.next();
String cname=cell.getStringCellValue();
System.out.print(cname);
System.out.print(",");
}
System.out.println("\n");
}
book.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
通过以上代码就可以将表格中的数据逐行读取出来了,如下图是控制台的输出。如果想把每一行逐行添加到数据库中表中,只需在程序中加入数据库插入语言即可(当然前提是你的程序中已经导入了连接数据库的jar包,本地或服务器已经安装了数据库)。