不管是做軟件還是做網(wǎng)站此改,相信很多人在做的時候都要用到數(shù)據(jù)庫趾撵,而數(shù)據(jù)庫的數(shù)據(jù)從何而來呢,可以使手動添加的,但是大多數(shù)情況下我們使用的是已有的數(shù)據(jù)占调,我們想借助開發(fā)的工具管理目前已有的數(shù)據(jù)暂题,如果是小量的數(shù)據(jù),手動錄入也無妨究珊,但是對于大量數(shù)據(jù)呢薪者,手動錄入顯然已經(jīng)不顯示,而且剿涮,更多的時候言津,我們呢想在軟件上增加一個數(shù)據(jù)的批量導入,這樣不管是誰在用這款軟件取试,都可以方便的管理已有數(shù)據(jù)悬槽,那么我們最常用的數(shù)據(jù)管理器是什么呢,毫無疑問Excel想括,但是我們做軟件是幾乎沒有人會使用Excel作為DB陷谱,所以我們遇到的問題就是如何在軟件中實現(xiàn)數(shù)據(jù)批量導入,數(shù)據(jù)源是Excel瑟蜈,有人會說用ODBC啊烟逊,可以導入到任何地方,但是這種做法好像沒有什么技術(shù)含量铺根,而且讓用戶沒次批量導入的時候都設置一個ODBC數(shù)據(jù)源是不現(xiàn)實的宪躯,今天博主將給大家介紹用春java實現(xiàn)讀取Excel數(shù)據(jù)文件放入Access數(shù)據(jù)庫(各個數(shù)據(jù)庫的原理是一樣的),我們用到的是一個開源API位迂,jxl访雪,代碼如下:
public static boolean readExcel(String filePath){
boolean success=false;
Workbook rwb = null;
try{
InputStream is = new FileInputStream(filePath);
rwb = Workbook.getWorkbook(is);
//
獲取第一張Sheet表
Sheet rs = rwb.getSheet(0);
for (int k = 1; k < rs.getRows(); k++){
String major=rs.getCell(0, k).getContents();
String year=rs.getCell(1,k).getContents();
String class1=rs.getCell(2, k).getContents();
String number1=rs.getCell(3, k).getContents();
String name=rs.getCell(4, k).getContents();
String sex=rs.getCell(5, k).getContents();
String people=rs.getCell(6, k).getContents();
String area=rs.getCell(7, k).getContents();
String birth=rs.getCell(8, k).getContents();
String bodyid=rs.getCell(9, k).getContents();
String phone=rs.getCell(10, k).getContents();
String hostel=rs.getCell(11, k).getContents();
String father=rs.getCell(12, k).getContents();
String mather=rs.getCell(13, k).getContents();
String tel=rs.getCell(14, k).getContents();
String studentstate=rs.getCell(15, k).getContents();
String level1=rs.getCell(16, k).getContents();
String party=rs.getCell(17, k).getContents();
String duties=rs.getCell(18, k).getContents();
String english=rs.getCell(19, k).getContents();
String computer=rs.getCell(20, k).getContents();
String address=rs.getCell(21, k).getContents();
String personstation=rs.getCell(22, k).getContents();
String fundingstation=rs.getCell(23, k).getContents();
String awardstation=rs.getCell(24, k).getContents();
String punishmentstation=rs.getCell(25,k).getContents();
String other1=rs.getCell(26, k).getContents();
String picturepath="";
if(major.equals("")||class1.equals("")||name.equals("")||number1.equals("")){
success=false;
break;
}else{
String str1="insert intoinformation(major,year,class1,number1,name,sex,people,area,birth,bodyid,phone,hostel,father,mather,tel,studentstate,level1,party,duties,english,computer,address,personstation,fundingstation,awardstation,punishmentstation,other1,picturepath)values('"+major+"','"+year+"','"+class1+"','"+number1+"','"+name+"','"+sex+"','"+people+"','"+area+"','"+birth+"','"+bodyid+"','"+phone+"','"+hostel+"','"+father+"','"+mather+"','"+tel+"','"+studentstate+"','"+level1+"','"+party+"','"+duties+"','"+english+"','"+computer+"','"+address+"','"+personstation+"','"+fundingstation+"','"+awardstation+"','"+punishmentstation+"','"+other1+"','"+picturepath+"')";
CommonCode.addInfo(str1);
CommonCode.closeAll();
success=true;
}
}
rwb.close();
}catch (Exception e){
e.printStackTrace();
}
return success;
}
?H??u?N????