public static ListStudent parseExcel(){
成都创新互联公司是专业的广阳网站建设公司,广阳接单;提供做网站、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行广阳网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
//解析excel文件 获取数据
//将每行数据当作一个Student对象放入list集合
ListStudent list = new ArryListStudent();
...
return list;
}
public static void updateDataBase(Student stu){
//更新数据库 将Student对象插入数据库
...
}
public void main(String[] args){
ListStudent list = parseExcel();//读取excel
for(Student stu:list){//遍历集合向数据库插入数据
updateDataBase(stu);
}
}
大致的写了下 具体实现应该没问题吧?
先读取EXCEL 文件,把数据存入List1集合。
然后,遍历list集合,拼接SQL语句,存入新List2集合。
使用批处理,遍历执行List2中的SQL语句
java连接数据库时,往数据库一次添加多条数据,可以在DAO层,使用executeBatch()批量插入数据,如下代码:
conn = DBToolkit.getConnection();
Statement stmt = conn.createStatement();
//连续添加多条SQL
stmt.addBatch("insert into testdb.book (kind, name) values ('java', 'java in aciton')");
stmt.addBatch("insert into testdb.book (kind, name) values ('c', 'c in aciton')");
//执行批量执行
stmt.executeBatch();
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@你的主机ip :1521:orcl";// 设置连接字符串
String username = "你的用户名";
String password = "你的密码";
Connection con=java.sql.DriverManager.getConnection(url,user,password);
Statement stmt = con.createStatement();
StringBuffer sql = new StringBuffer("insert into user values (" + list.get(1).getId()+", "+list.get(1).getUserName()+", "+list.get(1).getPassword()+")");
for(int i = 2; i list.size(); i++){
sql.append(", ("+ list.get(i).getId()+", "+list.get(i).getUserName()+", "+list.get(i).getPassword()+")");//
}
sql.append(";");
ResultSet rs = stmt.executeQuery(sql);
rs.close();
stmt.close();
con.close();