Galera !
Imagine uma aplicação que precisa acessar determinadas tabelas do banco de dados do cliente. ( banco = SQL SERVER )
só que essa aplicação será usada em outro cliente ( que faz o mesmo serviço ) que usa MYSQL com outras campos de tabela, e outro nome de tabela
gostaria de saber alguma forma prática deixar a Aplicação mais genérica, ou seja, conseguir utilizar tanto em 1 como no outro cliente sem muitas modificações no código
visto que tem nomes de tabelas e colunas diferentes.
Cria uma fabrica de DAOs que receba o tipo de cliente (Oracle, SQL Server, MySQL, etc) e retorne o dao correto para você.
Tente usar o hibernate, se os nomes das tabelas e campos foram completamente diferente você pode criar arquivos de configuração para cada banco, se a diferença for em prefixos ou algo assim, o hibernate tem estrategias para corrigir isso sem precisar mapear duas vezes.
http://hibernate.org
e como que ficaria o hibernate.cfg.xml??
É possível anotar vários bancos nele??