Aconselho a usar uma biblioteca como DBPool . Vai tirar muitas dores de cabeça de você porque o desenvolvedor já cuidou delas. Para garantir a limpeza adequada do pool de conexões, leia a documentação sobre um gancho de desligamento da JVM.