[resolvido]getConnection para varios bancos sem precisar de if

3 respostas
pereiralp

Senhores meu problema e que nao queria criar if para cada banco na getConnection, para se adequar a url de cada banco, abaixo.

public Connection getConnection(String jdbc, String ipOrhost, String port, String seviceName, String name, String passcode, String jdbcDriver) throws ClassNotFoundException {
        String url = "";
        if(jdbc.equalsIgnoreCase("oracle") ){



        if (jdbc.equalsIgnoreCase("oracle")) {
                              Class.forName(jdbcDriver);
                        url = url.concat("jdbc:").concat(jdbc).concat(":thin:@").concat(ipOrhost).concat(":").concat(port).concat(":").concat(seviceName);
           
        }else {

                if (jdbc.equalsIgnoreCase("mysaql")   ){
 
                    // Aqui  mysql
                }else{
                       // Aqui  outros bancos
         
                } 

        }
        }

Assim , eu gostaria de saber se existe uma outra forma de fazer isso, minha preucupação e pq estou tentando fazer um "jar" que forneca conexação para todo e qualquer bancos.

Agradeço a ajuda.

3 Respostas

arthurgon

Você pode utilizar um arquivo DataSource configurado no seu servidor de aplicações com todas as bases que precisa, independente do fabricante e utilizar o Spring para fazer esse gerenciamento.

T

Vc pode tambem criar um fabrica de conexões. Cria uma classe no padrão Factory que retorna outras classes de conexões. Assim vc centraliza a utilização do codigo na classe factory.

pereiralp
Vc pode tambem criar um fabrica de conexões. Cria uma classe no padrão Factory que retorna outras classes de conexões. Assim vc centraliza a utilização do codigo na classe factory. [code]

Puts cai como um luva vlw amigo

Criado 22 de outubro de 2011
Ultima resposta 22 de out. de 2011
Respostas 3
Participantes 3