Como Manipular Conexão com o banco utilizando um XML ou TXT ?, Java Swing - Ajudem Me!

3 respostas
by.fogaca
/*
Bom Dia Galera, Gostaria de Saber se alguém poderia me dar uma Ajudinha, eu preciso manipular as seguintes variavéis:
driver, url, usuario, senha.
Eu preciso que após eu gerar meu (.jar) eu tenha um XML ou TXT que possa manipular os valores destas variaveis e meu sistema as leia
no XML ou TXT toda vez que eu precise me conectar no banco.

Se alguem puder me dar uma luz ou um caminho a seguir !?

GRATO PELA ATENÇÃO.

*/
   final private String driver = "net.sourceforge.jtds.jdbc.Driver";
    final private String url = "jdbc:jtds:sqlserver://servidor:1433/banco";
    final private String usuario = "usuario";
    final private String senha = "senha";
/*
SEGUE A CLASSE QUE ESTOU USANDO PARA MANIPULAR MEU BANCO.
*/


package br.com.fba.utilitarios;

import java.sql.*;
import javax.swing.*;

//METODO DE CONEXÃO COM O BANCO DE DADOS
public class Conexao{

    final private String driver = "net.sourceforge.jtds.jdbc.Driver";
    final private String url = "jdbc:jtds:sqlserver://servidor:1433/banco";
    final private String usuario = "usuario";
    final private String senha = "senha";
    private Connection conexao;
    public Statement statment;
    public ResultSet resultset;

    public boolean conecta(){

        boolean result = true;
        try{
            Class.forName(driver);
            conexao = DriverManager.getConnection(url, usuario, senha);
          JOptionPane.showMessageDialog(null, "Conectou no Banco");
        }
        catch(ClassNotFoundException Driver){
            JOptionPane.showMessageDialog(null, "Conexão não Localizada"+Driver);
            result = false;
        }
        catch(SQLException Fonte){
            JOptionPane.showMessageDialog(null, "Deu erro na conexão "+"Com a Fonte de Dados: " +Fonte);
            result = false;
        }
        return result;
    }

    //METODO DESCONECTA
    public void desconecta(){
        boolean result = true;
      try{
          conexao.close();
          JOptionPane.showConfirmDialog(null, "Banco Fechado");
      }
      catch(SQLException erroSQL){
          JOptionPane.showConfirmDialog(null, "Não Foi Possivel" +
                  "fechar o banco de dados: "+erroSQL.getMessage());
          result = false;
      }
    }

    //METODO EXECUTA SQL
    public void executeSQL(String sql){
        try{//Statement navegavel
            statment = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);//CAMINHO DA CONEXÃO
            resultset = statment.executeQuery(sql);// SQL QUE SERA EXECUTADO
        }
        catch(SQLException sqlex){
            JOptionPane.showConfirmDialog(null,"Não foi possivel"+
                    " executar o Comando SQL, "+sqlex+", o sql passado foi o.: "+sql);
        }
    }
}

3 Respostas

by.fogaca
by.fogaca:
/*
Bom Dia Galera, Gostaria de Saber se alguém poderia me dar uma Ajudinha, eu preciso manipular as seguintes variavéis:
driver, url, usuario, senha.
Eu preciso que após eu gerar meu (.jar) eu tenha um XML ou TXT que possa manipular os valores destas variaveis e meu sistema as leia
no XML ou TXT toda vez que eu precise me conectar no banco.

Se alguem puder me dar uma luz ou um caminho a seguir !?

GRATO PELA ATENÇÃO.

*/
   final private String driver = "net.sourceforge.jtds.jdbc.Driver";
    final private String url = "jdbc:jtds:sqlserver://servidor:1433/banco";
    final private String usuario = "usuario";
    final private String senha = "senha";
/*
SEGUE A CLASSE QUE ESTOU USANDO PARA MANIPULAR MEU BANCO.
*/


package br.com.fba.utilitarios;

import java.sql.*;
import javax.swing.*;

//METODO DE CONEXÃO COM O BANCO DE DADOS
public class Conexao{

    final private String driver = "net.sourceforge.jtds.jdbc.Driver";
    final private String url = "jdbc:jtds:sqlserver://servidor:1433/banco";
    final private String usuario = "usuario";
    final private String senha = "senha";
    private Connection conexao;
    public Statement statment;
    public ResultSet resultset;

    public boolean conecta(){

        boolean result = true;
        try{
            Class.forName(driver);
            conexao = DriverManager.getConnection(url, usuario, senha);
          JOptionPane.showMessageDialog(null, "Conectou no Banco");
        }
        catch(ClassNotFoundException Driver){
            JOptionPane.showMessageDialog(null, "Conexão não Localizada"+Driver);
            result = false;
        }
        catch(SQLException Fonte){
            JOptionPane.showMessageDialog(null, "Deu erro na conexão "+"Com a Fonte de Dados: " +Fonte);
            result = false;
        }
        return result;
    }

    //METODO DESCONECTA
    public void desconecta(){
        boolean result = true;
      try{
          conexao.close();
          JOptionPane.showConfirmDialog(null, "Banco Fechado");
      }
      catch(SQLException erroSQL){
          JOptionPane.showConfirmDialog(null, "Não Foi Possivel" +
                  "fechar o banco de dados: "+erroSQL.getMessage());
          result = false;
      }
    }

    //METODO EXECUTA SQL
    public void executeSQL(String sql){
        try{//Statement navegavel
            statment = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);//CAMINHO DA CONEXÃO
            resultset = statment.executeQuery(sql);// SQL QUE SERA EXECUTADO
        }
        catch(SQLException sqlex){
            JOptionPane.showConfirmDialog(null,"Não foi possivel"+
                    " executar o Comando SQL, "+sqlex+", o sql passado foi o.: "+sql);
        }
    }
}
diego_ms136

Cara você tem que trabalhar com arquivos PROPERTIES.

São arquivos txt´s comuns que servem para armazenarmos uma propriedade, que no seu caso
pode ser usuário, senha, banco e url do servidor, não sei se é isto o que vc quer.

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

/**
 *
 * @author AES
 */



public class leitorRPS{
    operacoes opt = new operacoes();
    
    public static FileReader leitor;

    public static String ler(File arquivo){

        StringBuilder sb = new StringBuilder();
        String texto = "";

            try{
                leitor = new FileReader(arquivo);
                int contador;
                do{
                    contador = leitor.read();
                    if(contador != -1){
                        sb.append((char)contador);
                    }
                }while(contador != -1);{
                }
                
                texto =sb.toString().replaceAll("[.,_|:;*#]","");
                }
                catch(IOException erro){}

                return texto;
            }

    public int linhas(String texto){
        return texto.split("\n").length;
    }

   
}

O que você pode fazer é efetuar a leitura do arquivo e fazer uma busca no seu txt.
Lembrando que você tem que passar como parâmetro desta classe um arquivo.

File arquivo = new File("Diretório onde esta seu TXT");

Após ter chamado a classe e ter efetuado a leitura,
a classe retornará o texto lido, agora é só fazer o trabalhinho de quebrar o texto e pegar o que você desejar.

OBS: crie um txt no formato de CSV que será mais fácil manipular estas informações.
depois dá uma pesquisada para saber como manipular arquivos CSV.

Classe de escrita :

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package notafiscal2011;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author Diego
 */
public class operacoes {

registrarLogs logs = new registrarLogs();

    public File abrirDoc(String caminho){
        File arquivo = new File(caminho);
        return arquivo;
    }

    public String formataDoc(String texto){
        String txt[] = texto.split(" ");
        return texto;
    }

    public void salvarDoc(String nomeArq,String conteudo,boolean adicionar){
        try {
            FileWriter fw = new FileWriter(nomeArq, adicionar);

            fw.write(conteudo);
            fw.close();
        } catch (IOException ex) {
            Logger.getLogger(operacoes.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    public void imprimir(String texto){
        System.out.println(texto);

    }

    public void deletarDoc(){}
    public void criarDoc(){}

    //Método utilizado para pegar o texto de uma posição inicial e final informada
    //na passagem de parâmetro do método, ex : "DIEGO", se usar pegarLetra(0,2) o resultado será "DIE";
    public String pegarLetra(String texto,int i,int j){
        texto = texto.substring(i, j);
        return texto;
    }

    public String removerCaracter(String texto,String caracter,String caracSubs){
        texto = texto.replaceAll(caracter, caracSubs);
        return texto;
    }

    public String removerEspaço(String texto){
        texto = texto.trim();
        return texto;
    }

    public String colocarMaisMenos(String texto,int tp){
        switch(tp){
            case 1: {texto = texto.toLowerCase();};break;
            case 2: {texto = texto.toUpperCase();};break;
        }
        return texto;
    }

    public int somarLetra(String numTxt[]){
        int numTotal = 0;
            for(int i = 0 ; i < numTxt.length;i++){
                numTotal += Integer.parseInt(numTxt[i]);
            }
        return numTotal;
    }

    public int totalLinhas(String texto){
        int linhas = texto.split("\n").length;
        return linhas;
    }

    public void mostrarTela(JTextArea txt,String texto){
        txt.setText(texto);
    }



}

txt :

by.fogaca

Belza diego_ms136 vou tentar aqui !

Criado 23 de fevereiro de 2011
Ultima resposta 25 de fev. de 2011
Respostas 3
Participantes 2