java中怎么实现批量录入数据

java中怎么实现批量录入数据,第1张

批量数据进入数据库使用addBatch()和executeBatch()方法

PreparedStatement.addBatch() 

...... 

PreparedStatement.executeBatch()

需要注意的是一次最多不要超过50条:

1.因为插入的时候数据库已经锁定,然而若是一次性插入太多会造成其他业务的等待。

2.会造成内存的溢出

举例:

PreparedStatement pst = (PreparedStatement) con.prepareStatement("insert into ***** values (?,'***')")   

for (int i = 0 i < 10000 i++) {   

    pst.setInt(1, i)   

    // 把一个SQL命令加入命令列表   

    pst.addBatch()   

}   

// 执行批量更新   

pst.executeBatch()   

// 语句执行完毕,提交本事务   

con.commit()

资料来源:CSDN论坛-原资论坛料链接如下

URL SRC:  http://bbs.csdn.net/topics/320048117

这个你只要配置3个SessionFactory、datasource分别使用3个用户,你可以使用一个jdbc.properties但是里面不要写用户,用户信息在datasource中直接写,然后你需要使用那个用户连接数据库就是用对应的SessionFactory即可!

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()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10099334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存