Ummm, solo por puntualizar, no creo que fuera exactamente el autocommit, ya que por defecto esta a true. El problema es que si no haces un close() del PreparedStatement, puede que el autocommit no entre en efecto. Hasta puede depender del driver, pero de todas formas siempre es bueno hacer un close() de todo lo que se usa, Statements, PreparedStatement,Connection... para dejarlo todo bien... apañadito
.