CommunicationsException ao perder conexão com banco

Estou criando um programa que faz uma atualização no banco de dados a cada 1 segundo.

Quando a conexão com o banco de dados cai, por queda no servidor ou algo do tipo. É retornado a exceção CommunicationsException no programa e ocorre o travamento, como eu posso tratar essa exceção para que a conexão seja restabelecida quando o servidor retornar.

Está usando um pool de conexões ou algo semelhante?
Tecnicamente falando, manter uma conexão aberta (creio que não seja o caso) é inviável.
Bancos de dados são recursos finitos e limitados, onde, você deve abrir a conexão, fazer o que precisa e fechar a conexão.
O fato de haver problemas ao perder a conexão pode indicar problemas maiores.