Это исключение com.mysql.jdbc.exceptions.jdbc4.CommunicationsException
возникает, если соединение с базой данных простаивает в течение длительного времени.
Это незанятое соединение возвращает true на connection.isClosed();
, но если мы попытаемся выполнить инструкцию, тогда оно запустит это исключение, поэтому я предлагаю пойти с пулом базы данных.