用java实现excel数据批量导入数据库

不管是做软件还是做网站,相信很多人在做的时候都要用到数据库,而数据库的数据从何而来呢,可以使手动添加的,但是大多数情况下我们使用的是已有的数据,我们想借助开发的工具管理目前已有的数据,如果是小量的数据,手动录入也无妨,但是对于大量数据呢,手动录入显然已经不显示,而且,更多的时候,我们呢想在软件上增加一个数据的批量导入,这样不管是谁在用这款软件,都可以方便的管理已有数据,那么我们最常用的数据管理器是什么呢,毫无疑问Excel,但是我们做软件是几乎没有人会使用Excel作为DB,所以我们遇到的问题就是如何在软件中实现数据批量导入,数据源是Excel,有人会说用ODBC啊,可以导入到任何地方,但是这种做法好像没有什么技术含量,而且让用户没次批量导入的时候都设置一个ODBC数据源是不现实的,今天博主将给大家介绍用春java实现读取Excel数据文件放入Access数据库(各个数据库的原理是一样的),我们用到的是一个开源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����

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,212评论 18 399
  • 小编费力收集:给你想要的面试集合 1.C++或Java中的异常处理机制的简单原理和应用。 当JAVA程序违反了JA...
    八爷君阅读 10,220评论 1 114
  • (一)Java部分 1、列举出JAVA中6个比较常用的包【天威诚信面试题】 【参考答案】 java.lang;ja...
    独云阅读 11,948评论 0 62
  • 本人的环境为Myeclipse10、MySQL5.7.15 本文包括:简介JDBC编程步骤打通数据库程序详解—Dr...
    廖少少阅读 9,635评论 7 39
  • 我是一个阿姨,从我40岁开始自学,到现在五个年头。自从开始拿起画笔,就疯狂的爱上画画,就是狂热的爱。 ...
    兔子姐姐爱画画阅读 3,823评论 16 23

友情链接更多精彩内容