1、编写SQL语句
由于数据量过大,所以采用拼接SQL语句的方式,不采用在Java代码中循环。
对应的实体类为:
2、编写Java代码
由于Oracle对于SQL语句长度有限制,所以分批批量添加,不能一次性十万条添加。
这里是存储实体类的集合
大致思想是:新建立一个数组,每次向该数组中添加数据,当该数组的长度为100时就去提交添加,直至原数组中数据添加完毕。(几百都可以)
3、注意事项
因数据量较大,为了避免添加过程中服务器宕机或其他原因导致数据添加不完整,所以建议交给事务管理,以防出现这种情况。
根据这种方法,10W条数据大致70s左右,因为我的业务背景是(读取Excel中数据,然后存储到List中,再分批添加到数据库中,然后将这10W条数据导出到dbf文件中),所以会比较慢,如果只是存储到数据库中的话,大概30-40s左右吧。