addBatch,excuteBatch
1.单个处理与多处理的区别
executeQuery()是专门用来执行DQL(就是数据查询语句SELECT)语句的;
而addBatch()和executeUpdate()是用来执行数据插入的,不同就是一个批量,一个单个插入。这两个不要一起使用,那样addBatch()就和没写一样。
addBatch()是用来缓存数据的,将多条sql语句缓存起来,再通过executeBatch()方法一次性发给数据库,大大提高执行效率。executeUpdate()注重的及时性,每写一条sql语句就发送给数据库保存起来,没有缓存,这样频繁操作数据库效率非常低。
还有一点需要注意的是:使用addBatch()缓存数据时要在循环中设置条件,当循环达到指定次数后执行executeBatch(),将缓存中的sql全部发给数据库,然后执行clearBatch()清楚缓存,否则数据过大是会出现OutOfMemory(内存不足)。
2.详细的解释
看博客:http://blog.csdn.net/yiyuhanmeng/article/details/8107493
里面有关于sql语句批量处理的详解,还有分别用Preparestatment和Statment在sql语句批量处理上的使用