Тестовый сценарий:
- set autocommit = false
- использование транзакций
- закрыть соединение, не устанавливая его обратно в autocommit = true
Результат: когда это определенное соединение используется повторно, все равно имеет autocommit = false (для других новых соединений по умолчанию autocommit = true). Итак, как только я уничтожу это соединение на стороне базы данных и снова вызову мой код, только тогда пул даст мне новое соединение со значением по умолчанию autocommit = true.
Вывод: это влияет только на это соединение, но перед закрытием убедитесь, что вы вернули его в autocommit = true! (Это основано на реальном тестировании, а не на предположении)
Примечание: здесь также отмечается это поведение: http://www.coderanch.com/t/583969/JDBC/databases/Tomcat-connection-pool-auto-commit
Я использую JDBC с Tomcat7, Java 1.7, MySQL5.6, Connector / J 5.1.