有没有办法设置 Spring 的 NamedParameterJdbcTemplate 对象的批量大小?
我在我的项目中遇到了一些 OutOfMemory 问题,但我能够通过在较小块的循环中调用 NamedParameterJdbcTemplate 来解决它。但这需要一些额外的努力,例如确定 block 大小、将大列表分解成较小的子列表等。
我想知道 NamedParameterJdbcTemplate 是否有任何这样的直接方法,我可以为它指定批处理大小。尽管在 API 文档中我没有看到任何内容。但是他们在 JDBCTemplate 中有一些东西。现在,如果我必须切换到 JDBCTemplate,我将不得不重做我的代码 :(
请提出建议。
最佳答案
您不能直接使用 NamedParameterJdbcTemplate
执行此操作,但您可以调用 #getJdbcOperations通过实现的 NamedParameterJdbcOperations
接口(interface)的方法。它的返回类型 JdbcOperations
目前仅由经典的 JdbcTemplate
实现并且具有 #batchUpdate你需要的方法。但是,您不能在这种情况下使用命名参数。
参见 example Spring 文档中的典型用法。
关于java - NamedParameterJdbcTemplate 批量大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18666139/