É possível Capturar Erros de Violação de Integridade Referencial?

Pessoal, estou desenvolvendo um sistema em Java + Mysql. Até o momento estive utilizando tabelas MyISAM, mas agora estou querendo mudar para as InnoDB´s por questão de manter a integridade e a consistência dos dados no banco.

O sistema é de pequeno porte, vocês acham que é válido eu migrar par a InnoDBe implementar as retrições?
Nunca trabalhei com essas tabelas no MySql, então existem alguns incovenientes?

Se for melhor implementar as restrições, é possível eu capturar os erros gerados na violação de IR no Java?
Tipo exibir um JOptionPane com a mensagem!

Desde já,
Obrigado pela atenção e a ajuda de todos!

os erros de integridade referencial deve vir do banco com um código específico.

Assim vc pode tratar as excessões do banco verificando o código.

Mas como eu capturo eles Rissato?
Já pesquisei no google e não achei nada!