Из вашего комментария у вас есть prepareCall внутри вашего цикла.Преимущество подготовленных операторов (и вызываемых операторов) заключается в том, что вы можете подготовить их один раз, а затем поменять местами значения, переданные в параметрах;каждый раз при подготовке вызова возникают накладные расходы, поэтому, если вы могли бы вынести это за пределы цикла, вы можете обнаружить, что время выполнения уменьшается.Вы можете обнаружить, что отключение AutoCommit также помогает, так как при каждом коммите возникают накладные расходы.
conn.setAutoCommit(false);
CallableStatement stmt = conn.prepareCall(sql);
while(true) {
stmt.setInt(1, value);
stmt.execute();
}
conn.commit();
conn.setAutoCommit(true);
(conn.setAutoCommit(true)
делает коммит, но я нахожу более ясным явное).