WEB开发网
开发学院数据库DB2 如何读取Excel数据并导入DB2数据库 阅读

如何读取Excel数据并导入DB2数据库

 2008-09-03 16:27:24 来源:WEB开发网   
核心提示:最近项目需要读取Excel,将数据导入数据库保存,如何读取Excel数据并导入DB2数据库,最终可以用报表读取数据库并显示,比较简单,功能有两个:一是POI读取Excel,二是DB2数据库的连接和SQL执行,查了一下两者的资料,觉的也无所谓

最近项目需要读取Excel,将数据导入数据库保存,最终可以用报表读取数据库并显示,比较简单。查了一下两者的资料,觉的也无所谓,我需要的功能比较简单,只要能读取Excel数据就行,最后决定使用POI,比较信任apache,使用果然很简单,上网找了个源码,Copy过来稍微改改就能用了。

下面附的代码是一个Demo,功能有两个:一是POI读取Excel,二是DB2数据库的连接和SQL执行。

importJava.io.FileInputStream;
importjava.io.IOException;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.SQLException;
importjava.sql.Statement;
importorg.apache.poi.hssf.usermodel.HSSFCell;
importorg.apache.poi.hssf.usermodel.HSSFRow
;
importorg.apache.poi.hssf.usermodel.HSSFSheet;
importorg.apache.poi.hssf.usermodel.HSSFWorkbook;
importorg.apache.poi.poifs.filesystem.POIFSFileSystem;
publicclassPOITest
{
privatestaticConnectionconn=null;
privatestaticStatementstmt=null;
privatestaticbooleanconnectDB2()
{
Stringurl="";Stringusername="username";Stringpassword="password";//加载驱动程序以连接数据库
try
{
//添加类库驱动包db2jcc.jar和db2jcc_license_cu.jarClass.forName("com.ibm.db2.jcc.DB2Driver");
url="JDBC:db2://192.168.0.1:50000/dbname";//添加类库驱动包db2java.jar//Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance();
//url="jdbc:db2:njtcdata";conn=DriverManager.getConnection(url,username,password);
stmt=conn.createStatement();
}
//捕获加载驱动程序异常catch(ClassNotFoundExceptioncnfex){System.err.println("装载JDBC驱动程序失败。");
cnfex.printStackTrace();returnfalse;
}
//捕获连接数据库异常catch(SQLExceptionsqlex)
{
System.err.println("无法连接数据库");
sqlex.printStackTrace();//System.exit(1);
//terminateprogramreturnfalse;
}
returntrue;
}
privatestaticbooleanreadExcelToDB2()
{
POIFSFileSystemfs=null;
HSSFWorkbookwb=null;
try
{
fs=newPOIFSFileSystem(newFileInputStream("c:  est.xls"));
wb=newHSSFWorkbook(fs);
}
catch(IOExceptione)
{
e.printStackTrace();returnfalse;
}
HSSFSheetsheet=wb.getSheetAt(0);
HSSFRowrow=null;
HSSFCellcell=null;Stringname="";intid=0;introwNum,cellNum;
inti;
rowNum=sheet.getLastRowNum();
for(i=0;i<=rowNum;i++)
{
row=sheet.getRow(i);
//cellNum=row.getLastCellNum();
cell=row.getCell((short)0);
name=cell.getStringCellValue();
cell=row.getCell((short)1);
id=(int)cell.getNumericCellValue();
Stringsql="insertintoTEST(ID,NAME)values("+id+",’"+name+"’)";
try
{
stmt.executeupdate(sql);
}
catch(SQLExceptione1)
{
e1.printStackTrace();
returnfalse;
}
}
returntrue;
}publicstaticvoidmain(String[]args)
{
if(connectDB2()==true)
{
if
(readExcelToDB2()==true)
System.out.println("数据导入成功");
else
System.out.println("数据导入失败")
;
}
else
{
System.out.println("数据库连接失败");
}
}
}

Tags:如何 读取 Excel

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接