Evitando acoplamento e utilizando a API Propertys

7 respostas
T

Boa tarde caros amigos,

Estou com uma dúvida de como proceder, estou desenvolvendo uma aplicação que utilizada a JDBC para mysql e tem toda aquela parte de configuração do endereço da base, usuário e etc… Podemos notar que essa configuração vai variar e não seria legal elas estar presente estaticamente no código para não causar acoplamento né???

Bom a melhor prática então seria utilizar a API property aonde você configura as tags e os parametros respectivos fazendo a minha classe de configuração da conexão buscar do arquivo ? E a senha como faço pois ela vai ficar sem encriptação ??

Qual a melhor prática para esses tipos de problemas?

7 Respostas

rodrigo_corinthians

Se for aplicação Web poderia usar [url=http://www.google.com.br/search?hl=pt-BR&q=DataSource&btnG=Pesquisa+Google&meta=]DataSource[url].

T

mas é pra desktop! por isso não seria o ideal!

Andre_Fonseca

Cara,

Coloca tudo num arquivo xml e faz o parser para a sua aplicacao. Você poderia fazer algo assim:

<configuracoes-bd>
  <tipo-bd>MySQL</tipo-bd>

   <mysql>
     <host>localhost</host>
     <user>root</user>
     <passwd>sssss</passwd>
   </mysql>

   <sql-server>
     <host>10.0.20.000</host>
     <user>root</user>
     <passwd>wwww</passwd>
   </sql-server>

<configuracoes-bd>

caso vc quiser alterar de BD basta alterar o node <tipo-bd>

T
André Fonseca:
Cara,

Coloca tudo num arquivo xml e faz o parser para a sua aplicacao. Você poderia fazer algo assim:

<configuracoes-bd>
  <tipo-bd>MySQL</tipo-bd>

   <mysql>
     <host>localhost</host>
     <user>root</user>
     <passwd>sssss</passwd>
   </mysql>

   <sql-server>
     <host>10.0.20.000</host>
     <user>root</user>
     <passwd>wwww</passwd>
   </sql-server>

<configuracoes-bd>

caso vc quiser alterar de BD basta alterar o node <tipo-bd>

Gostei da sua solução e sinceramente eu pensava em algo assim! Tem algum API para trabalhar com arquivos XML???

Tem um tutorial legal ou um artigo sobre a API com uns exemplos pra mim pegar o basico e desenvolver o meu raciocinio???

Andre_Fonseca

Oi,

Aqui no guj mesmo tem 2:

http://www.guj.com.br/java.tutorial.artigo.15.1.guj

http://www.guj.com.br/java.tutorial.artigo.22.1.guj

Eu to usando o DOM, mas ai vai da sua escolha…

[]'s

Marky.Vasconcelos

ou .properties

Marky.Vasconcelos

Desculpa não vi direito sua duvida
Pra senha você pode criar um progama que EmCrypta e Grava depois você usa o mesmo pra Descryptografa e usa

um exemplo é essa classe que eu fiz
dai antes de gravar usa o getCrypto e quando lê getDescrypto

Eu sei que o Java já tem a API crypto mais nunca tentei usa-la

class MyCrypto
{
   public static String getCrypto(String toCrypto){
    byte[] b = toCrypto.getBytes(); 
    char[] a = new char[b.length];
    for(int i = 0;i<b.length;i++){
        int crypto = (i % 2 == 0)? 2 : 3;
        b[i] += crypto;
        a[i] = (char) b[i];
    }
    return String.valueOf(a);
    }
    public static String getDescrypto(String toDescrypt){
    byte[] b = toDescrypt.getBytes(); 
    char[] a = new char[b.length];
    for(int i = 0;i<b.length;i++){
        int crypto = (i % 2 == 0)? 2 : 3;
        b[i] -= crypto;
        a[i] = (char) b[i];
    }
    return String.valueOf(a);
    }
    }
Criado 23 de agosto de 2007
Ultima resposta 23 de ago. de 2007
Respostas 7
Participantes 4