Olá Rafaell. Tudo bom? O setAutocommit(); commit(); e rollback(); funcionam em cenários onde há contexto transacional. Um contexto transacional ocorre quando mais de uma operação (insert, update) devem ocorrer juntas. Caso as duas funcionem corretamente, a transação é commitada, caso uma delas (ou as duas) deem errado, há o rolback da transação. Ou funciona tudo ou não funciona nada. Você pode incluí-los em um método de escrita, desde que faça sentido este cenário acima.
Quanto a questão da abertura de conexão, você até pode abrir dentro de cada método, mas vamos pensar no seguinte cenário. Eu quero chamar dois métodos juntos (inserirProduto, alterarProduto). Como citado antes, uma transação ocorre quando estamos encadeando duas chamadas e seria o cenário proposto nessa chamada dos dois métodos. Porém, como cada um dos métodos abre uma conexão com o banco, não seria possível realizar a transação, pois cada método abre uma conexão com banco, logo seriam duas operações distintas.
O ideal é avaliar cada cenário para estas tomadas de decisão. =)