diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/core/JdbcTemplate.java b/spring-jdbc/src/main/java/org/springframework/jdbc/core/JdbcTemplate.java index b07c70d218..37b5996db3 100644 --- a/spring-jdbc/src/main/java/org/springframework/jdbc/core/JdbcTemplate.java +++ b/spring-jdbc/src/main/java/org/springframework/jdbc/core/JdbcTemplate.java @@ -1036,10 +1036,13 @@ public class JdbcTemplate extends JdbcAccessor implements JdbcOperations { if (logger.isDebugEnabled()) { logger.debug("Executing SQL batch update [" + sql + "]"); } + int batchSize = pss.getBatchSize(); + if (batchSize == 0) { + return new int[0]; + } int[] result = execute(sql, (PreparedStatementCallback) ps -> { try { - int batchSize = pss.getBatchSize(); InterruptibleBatchPreparedStatementSetter ipss = (pss instanceof InterruptibleBatchPreparedStatementSetter ibpss ? ibpss : null); if (JdbcUtils.supportsBatchUpdates(ps.getConnection())) { @@ -1050,7 +1053,7 @@ public class JdbcTemplate extends JdbcAccessor implements JdbcOperations { } ps.addBatch(); } - return batchSize > 0 ? ps.executeBatch() : new int[] {}; + return ps.executeBatch(); } else { List rowsAffected = new ArrayList<>();