Sobre o Hibernate - Multibancos

A grande boa da programação hoje, é o desenvolvimento Multibanco. Eu programo em Delphi, e isso é um problemão, pois não é tão simples unir o PL/SQL com T-SQL e mais FB e PostgreSql e etc… Agora, eu ouvir dizer que o Hibernate consegue, num único código casar ORACLE, SQL SERVER, FIREBIRD, POSTGRESQL E ETC…, ou seja, trabalhar com vários bancos em um único código. Até que ponto isso é lenda ou verdade?

Dentre os DB que o Hibernate dá suporte, você pode alternar entre um e outro mudando apenas o dialect e os dados de conexão, tudo isso em um arquivo xml (ou properties), não precisa alterar código da aplicação, dependendo da mudança é possível que você tenha que alterar algumas configurações de mapeamentos também, coisa simples, como por exemplo caso você esteja usando sequence no Oracle e mude pra outro DB que não dê suporte a sequence, você precisaria alterar a forma de geração da chave no arquivo de mapeamento. Enfim, geralmente essa mudança no Hibernate é muito tranqüila.

DB suportados (testados) pelo Hibernate:
http://www.hibernate.org/80.html