Alguém sabe me dizer se é possível deixar o código independente do banco de dados com a utilização do Hibernate?
O que quero dizer com isso? Quero que minha aplicação rode normalmento quando ocorrer a mudanção do banco de dados, exemplo Posgresql para Mysql, sem alteração das classes Beans(.java) e arquivos de configuração do hibernate (.xml).
o hibernate é usado pra isso…
só que o xml vc vai ter q alterar… é o ambiente isso =)
mynameisflaw
Se você tiver um bom DBA, capaz de portar o banco nos minimos detalhes e utilizar uma geração de chaves generica (utilizo a anotacao @GenericGenerator, nao sei como é em HBM) você consegue portar sua aplicação alterando apenas suas configurações de conexão, e adicionando o driver específico ao classpath, é claro
Uma sugestão: evite ao máximo utilizar sql nativas, e se usar, documente.
abraços
O
o_0
Ao inves de utilizar o arquivo xml para informar o servidor, naum teria como em uma tela informarmos: o driver, nome ou ip servidor, nome banco ?? tudo isso dinamico para poder para poder configurar a classe Persistence para depois fabricar meu entitymanager
mynameisflaw
Vocẽ pode criar um recurso JNDI no seu application server retornando um datasource.
att.
palmeirensedf
palmeirensedf:
Ola, Pessoal
Alguém sabe me dizer se é possível deixar o código independente do banco de dados com a utilização do Hibernate?
O que quero dizer com isso? Quero que minha aplicação rode normalmento quando ocorrer a mudanção do banco de dados, exemplo Posgresql para Mysql, sem alteração das classes Beans(.java) e arquivos de configuração do hibernate (.xml).
Agradeço a atenção.
Dúvidas iniciais esclarecidas.
O que fiz para deixa portável?
Coloquei tudo que tem haver com o Banco de Dados no .xml do Hibernate que antes usava na class Bean, evitando assim de alterar todos os Beans quando migrar de db. (ufffaaaa, me livrei disso :lol: )
Agora queria saber a diferença de performance entre a strategy native e increment? Ou se existe outra solução onde o impacto na perfornance sejá menor?