c3p0 - jdbc connection pooling
Noticed I was still using Hibernate’s default connection pooling algorithm which seemed to be having a problem detecting when the connection had been dropped (probably by MySQL) after a period of time. Switched over to c3p0 which should fix the issue.
Also added log4j to the project to get some basic logging done, will fine tune the logging config over the next few releases.