Esta excepción com.mysql.jdbc.exceptions.jdbc4.CommunicationsException ocurre si la conexión de su base de datos está inactiva durante mucho tiempo. Esta conexión inactiva devuelve verdadero en connection.isClosed(); pero si tratamos de ejecutar la declaración, se activará esta excepción, por lo que sugeriré ir con la agrupación de bases de datos.