Galera…estou com o seguinte problema…
Tenho sistemas desktop que acessam uma base de dados…utilizando o hibernate…
O que gostaria de saber se tem como configurar dinamicamente o endereço da base de dados, user e senha do banco sem ter que definí-las no hibernate.cfg.xml… pois o sistema vai ter opções de utilizar uma base local(Banco embutido) ou usar um banco externo… onde o usuário vai poder definir o endereço do servidor, porta, senha, login, etc…
O problema é que se eu definir no xml… não vai ficar dinâmico…sendo que cada vez que eu for instalar o sistema, e se o banco for externo, vou ter que recompilar para modificar o endereço da base (Se for clientes diferentes que utilizam o sistema)
andreiribas
na realidade não vai precisar recompilar todo o código, e sim fazer uma alteração em um arquivo XML ou properties.
allan_ablaze
é isso msmo… se vc definir o enderço do banco no seu codigo, ai q vc vai ter que recompilar… definindo no xml, vc altera no xml, sem precisar recompilar…
L
leopoldof
Entendi, mas quanto tento fazer algo assim para testar…ele não carrega as propriedades
Properties p = new Properties(); p.put("connection.username","saaaaa"); p.put("connection.password","çalskdjf"); Configuration conf = new Configuration().addProperties(p); // Cria uma SessionFactory usando o hibernate.cfg.xml sessionFactory = conf.configure().buildSessionFactory();
Obviamente esse trecho está dentro de um try … mas ele não carrega as propriedades de usuário e senha…porque? O que estou fazendo de errado?
L
leopoldof
Ou existe algum objeto properties específico do hibernate?
andreiribas
hibernate.properties
procura na ducomentação que você pode usar ou o XML ou o properties