纯jdbc和jdbcTemplate的批处理那个效率高
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了纯jdbc和jdbcTemplate的批处理那个效率高相关的知识,希望对你有一定的参考价值。
3000万条数据插入。。从一个数据库里一次读1000条。在写到另一个数据库里。。循环这个动作。完成3000万条数据插入。那位大侠知道用纯jdbc批处理和spring的jdbcTemplate批处理那个效率高一些。我用的是mysql数据库。能详细说一下大侠们的思路么
Spring 的jdbcTemplate是对纯jdbc 的简易封装。常规来讲影响不大!理论上讲纯jdbc的执行效率好一点。不过jdbcTemplate的开发效率要高一点 参考技术A 肯定是纯jdbc高。spring的那个封装在底层,肯定比直接写来得慢。
spring jdbctemplate和java web中jdbc的区别,它有啥好处
Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中。
Spring提供的JdbcTemplate对jdbc做了封装,大大简化了数据库的操作。找到Spring JdbcTemplate源码,可以看到如下方法:
Connection con = DataSourceUtils.getConnection(getDataSource());如果直接使用JDBC的话,需要我们加载数据库驱动、创建连接、释放连接、异常处理等一系列的动作;繁琐且代码看起来不直观。
此外,Spring提供的JdbcTempate能直接数据对象映射成实体类,不再需要获取ResultSet去获取值/赋值等操作,提高开发效率;
如下:
return (User) jdbcTemplate.queryForObject("select * from tb_test1 where id = 100", User.class) 参考技术A 调用的还是javaweb中的jdbc,是对原生jdbc的封装,代码量更小,如同DBUtils一样以上是关于纯jdbc和jdbcTemplate的批处理那个效率高的主要内容,如果未能解决你的问题,请参考以下文章
spring3: 对JDBC的支持 之 Spring提供的其它帮助 SimpleJdbcInsert/SimpleJdbcCall/SqlUpdate/JdbcTemplate 生成主键/批量处理(
Spring JdbcTemplate.batchUpdate()