首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring JDBC vs JDBC

Spring JDBC vs JDBC
EN

Stack Overflow用户
提问于 2010-08-10 02:07:35
回答 3查看 2.3K关注 0票数 6

我一直在尝试使用Spring3.0 SimpleJdbcTemplate,插入1500条记录只需要5分钟,而我只需要几秒钟。直接使用JDBC插入。不确定我做错了什么。

EN

回答 3

Stack Overflow用户

发布于 2010-08-13 19:59:28

如果您正在构建batch,请考虑使用具有适当块大小设置的Spring batch - JdbcBatchItemWriter,它将在不到一秒的时间内加载这1500条记录。

票数 6
EN

Stack Overflow用户

发布于 2010-08-15 15:45:13

以下是一些值得检查的地方:

Spring

  • 的开销可能在应用程序级别由管理的事务上。查看您正在使用的事务管理器的类型(查找名为transactionManager的bean )。如果您正在使用JTA,那么这可能就是您的问题所在。由于JDBC速度很快,瓶颈似乎不是db。
  • 取决于你的应用程序如何使用该事务,它可能会在完成所有1500个请求和提交之前将所有内容都保存在内存中。您是否发现内存使用率有很大差异( Spring的应该更高)?
  • 在这两种情况下都使用哪种类型的数据库连接池?

快速分析您的应用程序的方法:

获取pid - "jps -l"

内存:jmap -histo PID (检查是否存在某种形式的内存泄漏)

检查幕后发生了什么:jstack PID (查找缓慢或递归的方法调用)

票数 1
EN

Stack Overflow用户

发布于 2015-04-01 07:20:03

如何使用

代码语言:javascript
复制
jdbcTemplate.batchUpdate(new String[]{sql}); 
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3442816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档