How to use JProgressBar in ArrayList comparison classes?

0

I have a class that compares two ArrayList , one with user-added information and one with database query.

After the query is done, I send this object to another class that performs writing that data to a file. I would like for as long as these checks were made, I would show a JProgressBar so the user does not get the impression that the system is locked.

public ArrayList<ModeloCadastroTerceiro> verificaCodigoTerceiro(ArrayList<ModeloCadastroTerceiro> modelo) {

    ConectaBanco conecta = new ConectaBanco();

  conecta.conexao();
  StringBuilder str_busca = new StringBuilder(); 

    ArrayList<ModeloCadastroTerceiro> modeloRetorno = new ArrayList<>();

    ModeloCadastroTerceiro mod;

    str_busca.append('(');
    for (ModeloCadastroTerceiro modelo1 : modelo) {
        str_busca.append("'");
        str_busca.append(modelo1.getCpfTerceiro());
        str_busca.append("'");
        str_busca.append(',');
    }

    str_busca.deleteCharAt((str_busca.toString().length() - 1));

    str_busca.append(')');

    String busca = String.valueOf(str_busca);

    conecta.executaSQL("select * from cadastro_terceiros where cpf_cnpj_terceiro in" + busca);

    try {
        conecta.rs.first();

        do {
            mod = new ModeloCadastroTerceiro();
            mod.setCodTerceiro(conecta.rs.getInt("id_prosoft_terceiro"));
            mod.setCpfTerceiro(conecta.rs.getString("cpf_cnpj_terceiro"));
            modeloRetorno.add(mod);
        } while (conecta.rs.next());

    } catch (SQLException ex) {
        if (ex.getErrorCode() == 0) {

        } else {
            Logger.getLogger(RecuperaInformacaoBanco.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

   ArrayList<ModeloCadastroTerceiro> fim = new ArrayList<>();
    ModeloCadastroTerceiro modFim;

    for (ModeloCadastroTerceiro mod1 : modelo) {

        boolean flag = false;//usada para marcar terceiro não encontrado

        for (ModeloCadastroTerceiro te1 : modeloRetorno) {

            if (mod1.getCpfTerceiro().equals(te1.getCpfTerceiro())) {
                flag = true;
            }
        }

        if (flag == false) {
            modFim = new ModeloCadastroTerceiro();
            modFim.setCodTerceiro(mod1.getCodTerceiro());
            modFim.setNomeTerceiro(mod1.getNomeTerceiro());
            modFim.setCpfTerceiro(mod1.getCpfTerceiro());
            fim.add(modFim);
        }else{
            System.out.println("TERCEIRO JA CADASTRADO... NÃO SERA IMPORTADO");
        }

    }
    return fim;
}

After that I call the class that writes to the file from a ArrayList

public void escreverNoArquivo(File arquivo, ArrayList<String> texto) {

    FileWriter fw;
    BufferedWriter bw;

    try {

        fw = new FileWriter(arquivo);
        bw = new BufferedWriter(fw);

        // Recupera cada linha do texto e escreve no arquivo
        for (int i = 0; i < texto.size(); i++) {

            // Escreve o texto no arquivo
            bw.write(texto.get(i));
            // Quebra de linha
            bw.newLine();

        }

        bw.close();

    } catch (IOException e) {
        e.printStackTrace();
    }

}

How to make a JProgressBar that shows the progress of this?

    
asked by anonymous 17.05.2016 / 13:33