JDBC操作数据库的时候,需要一次性插入大量的数据的时候,如果每次只执行一条SQL语句,效率可能会比较低。这时可以使用batch操作,每次批量执行SQL语句,调高效率。

public Boolean doCreateBatch(List<Emp> values) throws Exception
{
try
{
String sql = " INSERT INTO emp(empno,ename,job,hiredate,sal,comm) VALUES "
+ " (?,?,?,?,?,?) ";
this.conn.setAutoCommit(false);
PreparedStatement stmt = this.conn.prepareStatement(sql);
for(Emp emp : values)
{
stmt.setInt(1, emp.getEmpno());
stmt.setString(2, emp.getEname());
stmt.setString(3, emp.getJob());
stmt.setDate(4, new java.sql.Date(emp.getHiredate().getTime()));
stmt.setDouble(5, emp.getSal());
stmt.setDouble(6, emp.getComm());
stmt.addBatch();
}
System.out.println("before executing batch...");
stmt.executeBatch();
this.conn.commit();
System.out.println("after batch executed!");
this.conn.setAutoCommit(true); return true;
}
catch(Exception e)
{
throw e;
}
}

最新文章

  1. Python学习【第八篇】Set集合
  2. poj 1905Expanding Rods
  3. Android 数据存储之 SQLite数据库存储
  4. eclipse中如何修改dynamic web module version
  5. unity3d camera.culling mask
  6. c# WMI获取机器硬件信息(硬盘,cpu,内存等)
  7. 我给女朋友讲编程html系列(2) --Html标题标签h1
  8. Eclipse 运行多个Tomcat实例
  9. 【转载】干货来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载七)LAMP集成安装
  10. libvirt python binding 变成了一个新项目了。
  11. javascript第七章--DOM
  12. [JSOI 2008]最大数
  13. Asp.Net Output.Write()
  14. javascript 面向对象之路.1 - 小蜜蜂
  15. js控制元素隐藏和显示
  16. ASP.Net MVC多语言
  17. https 不检验证书
  18. [UE4]使用另一个相机Scene Capture Component 2D当小地图
  19. A* 寻路的八个变种
  20. pygame学习笔记(3)——时间、事件、文字

热门文章

  1. 在svg里面画虚线
  2. shell之脚本片断
  3. MySQL和MongoDB语句的写法对照
  4. js防止回车(enter)键提交表单及javascript中event.keycode
  5. Asp.net中全局缓存的几种方式
  6. Struts2 - Rest(2)
  7. Redis在Windows环境下搭建
  8. PHP导出数据到CSV文件
  9. erlang使用leveldb
  10. SVN switch 用法详解