Perfecto vamos avanzando
No se nada sobre Java, por ende no puedo adjudicar si tu codigo es del problema o esta bien o este mal. Me baso en la situacion que dijiste que utilizando otras aplicaciones te ocurre lo mismo al querer conectarte a MySQL:
'Conection refused'
Sin embargo te permite conectarte plenamente mediante el cliente local 'mysql' pero no te deja conectarte mediante ninguna aplicacion de terceros.... mas interesante aun
Ya que tienes acceso a ese Centos (No se hasta que nivel tienes acceso a sus archivos), pero podrias verificar si el puerto 3306 (el default de MySQL) esta abierto? Se que puede sonar tonto, pero MySQL en sistemas Linux/Unix tiene 2 maneras de ejecutarse, mediante puerto TCP/IP y mediante Sockets. Las ultimas versiones de MySQL vienen a ejecutarse mediante Sockets y no por puerto TCP/IP evitando que aplicaciones de terceros no se puedan conectar porque solicitan el puerto 3306 abierto (Aunque no digo 100% que este sea tu problema, sino una posibilidad).
Verifica con el comando el siguiente comando si el puerto 3306 esta abierto:
bash$ netstat -tunap | grep 3306
Sino te sale nada, bueno podemos asumir que a lo mejor lo modificaron para que corra en otro puerto (Y no el defecto) entonces haz:
bash$ netstat -tunap | grep mysql*
Si te aparece otro puerto distinto al 3306, tendras que decirle al API que usa Java para conectarse a MySQL que el puerto no es 3306 sino el indicado por netstat, ahora sino te aparece nada de nada, porfavor notificalo para proseguir al siguiente paso. (Ya que si esto ultimo ocurre MySQL esta escuchando por Sockets y no por TCP/IP).