Mesmo que você esteja perguntando sobre o JDBC, espero que isso ajude você a entender todas as opções disponíveis...
Eu normalmente lido com o failover usando uma configuração com balanceamento de carga que pode fazer failover normalmente, em vez da camada JDBC.
MySQL Proxy é uma maneira de fazer isso:
http://www.cyberciti.biz/tips/mysql-proxy-howto .html