Bom estou fazendo assim:
[code]package teste;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JScrollPane;
import javax.swing.table.DefaultTableModel;
public class NovoRecebeBanco implements ActionListener{
private String Drive = "oracle.jdbc.OracleDriver";
private String URL= "endereco do banco";
private String USARNAME = "usuario";
private String PASSWORD = "senha";
private Connection conn;
private JScrollPane js;
public static List listacliente;
public NovoRecebeBanco(){
try{
Class.forName(this.Drive);
this.conn = DriverManager.getConnection(URL, USARNAME, PASSWORD);
} catch (ClassNotFoundException e){
System.out.println("Não foi possivel encontrar o driver de banco: " + e.getMessage());
} catch(SQLException e){
System.out.println("Erro ao conectar com o banco: " + e.getMessage());
}
try{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
String url = "endereco banco";
this.conn = DriverManager.getConnection (url, "usuario", "senha");
Statement st = conn.createStatement();
int i =0;
ResultSet rs = st.executeQuery("select * from cobraca tes, cobraca est where nom_arquivo_inc = '9999' and tes.programa = est.programa and tes.ligacao = est.ligacao");
List listacliente = new ArrayList<cliente>(); // Lista de conjunto de clientes que vai receber o resultado da sua consulta.
//imprimindo resultado
while (rs.next()) {
String strNovaStrig = " ";
String strZero ="0";
String strnom_cliente = rs.getString("nom_cliente"); // nome do cliente
String str_tipodoc = null;
String strendereco_leit = rs.getString("endereco_leit"); //endereco do cliente
String strcpf = rs.getString("cpf");//cpf
String strcgc = rs.getString("cgc");//cgc
//ta faltando do numero da ksa dio cliente
String strnom_bairro_leit = rs.getString("nom_bairro_leit");//nome do bairro
String strcod_cep_leit = rs.getString("cod_cep_leit");//cep do cliente
String strnum_residencial = rs.getString("num_residencial"); // numero do telefone*/
String str_contador = null;
strnom_cliente = BarraCaracteres.BarraCaracteres(strnom_cliente, 45);//chamando a funcao barraCaracteres para imprimir somente os primeiros 45 caracteres
strnom_cliente = InserirEspaco.InserirEspaco(strnom_cliente, 45);//chamando a funcao inserir espaco quando o nome do cliente tiver menos que 45 caracteres
strendereco_leit = BarraCaracteres.BarraCaracteres(strendereco_leit, 50);//chamando a funcao barraCaracteres para imprimir somente os primeiros 50 caracteres
strnom_bairro_leit = BarraCaracteres.BarraCaracteres(strnom_bairro_leit, 25);//chamando a funcao barraCaracteres para imprimir somente os primeiros 25 caracteres
strcod_cep_leit = InserirZero.ZeroDireita(strcod_cep_leit, 8);////chamando a funcao inseri zero para preencher com zeros os caracteres do cep do cliente
//if para imprimir o cpf e cgc com insersao de zeros quando nulos valores
if ((strcpf == null) | (strcpf == "")){
if ((strcgc != null) & (strcgc != "")){
strcpf = strcgc;
str_tipodoc = "1";
}else {
strcpf = "00000000";
str_tipodoc = " ";
}
}else {
str_tipodoc = "2";
}
strcpf = InserirZero.InserirZero(strcpf, 15);
if(strnum_residencial == null){
strnum_residencial = "00000000";
}
//para inserir contadores no final de cada linha
str_contador = String.valueOf(i + 1);
i = (i + 1);
strnum_residencial = BarraCaracteres.BarraCaracteres(strnum_residencial, 8);//imprimi somente os 8 primeiros digitos da tabela de telefone
strnum_residencial = SemValores.SemValores(strnum_residencial, 8);//inseri tres na frente dos numeros de telefones
str_contador = InserirZero.InserirZero(str_contador, 6);//inseri zeros na frente do numero sequencial de cada linha ate complentar 6 caracteres
Test.TxtArquivo.append("01"); //tipo do registro
Test.TxtArquivo.append("69029160"); //praca de concessao
Test.TxtArquivo.append(strnom_cliente);// nome do cliente
Test.TxtArquivo.append(str_tipodoc);//TIPO DE DOCUMENTO
Test.TxtArquivo.append(strcpf);//CPF OU CGC
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strNovaStrig, 20)); //numero de RG
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strNovaStrig, 8)); //DATA DE NASCIMENTO
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strNovaStrig, 45)); //FILIACAO
Test.TxtArquivo.append(strendereco_leit);//endereco do cliente
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strZero, 5));//numero DA KSA DO cliente
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strNovaStrig, 30)); //COMPLEMENTO
Test.TxtArquivo.append(strnom_bairro_leit);//nome do bairro
Test.TxtArquivo.append(strcod_cep_leit);//CEP DO CLIENTE
Test.TxtArquivo.append("Manaus");//CIDADE
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strNovaStrig, 24));
Test.TxtArquivo.append("AM");//UF
Test.TxtArquivo.append("92");//FONE DDD
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strNovaStrig, 20)); //BRANCOS
Test.TxtArquivo.append(strnum_residencial);//NUMERO DO TELEFONE
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strZero, 10));//codigo de retorno
Test.TxtArquivo.append(str_contador);//sEquencial de registro
Test.TxtArquivo.append(" \n");
//dados referentes aos debitos
String strDataVencimento = rs.getString("dat_vencto");//6
String strData_registro = rs.getString("dat_compra");//7
String strValorDebito = rs.getString("val_debito");//8
String strcod_programa = rs.getString("cod_programa");//9
String strnum_ligacao = rs.getString("num_ligacao");//10
strDataVencimento = InserirZero.InserirZero(strDataVencimento, 8);
strData_registro = InserirZero.InserirZero(strData_registro, 8);
strValorDebito = InserirZero.ZeroDireita(strValorDebito, 13);
strcod_programa = InserirEspaco.InserirEspaco(strcod_programa, 30);
strnum_ligacao = InserirZero.InserirZero(strnum_ligacao, 8);
//para inserir contadores no final de cada linha
str_contador = String.valueOf(i + 1);
i = (i + 1);
str_contador = InserirZero.InserirZero(str_contador, 6);//inseri zeros na frente do numero sequencial de cada linha ate complentar 6 caracteres
Test.TxtArquivo.append("02");//1- tipo de registro
Test.TxtArquivo.append(str_tipodoc);//2- tipo de documento
Test.TxtArquivo.append(strcpf);//3- cpf ou cgc
Test.TxtArquivo.append("I");//4-codigo de operacao
Test.TxtArquivo.append("C");//5- comprador, fiador, avalista
Test.TxtArquivo.append(strDataVencimento);//6- data do vencmento
Test.TxtArquivo.append(strData_registro);//7- data do egistro
Test.TxtArquivo.append(strValorDebito);//8- valor do debito
Test.TxtArquivo.append(strcod_programa);//9- numero de aviso
Test.TxtArquivo.append(strnum_ligacao);//10- numero da ligacao
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strZero, 2));//11- natureza da inclusao
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strZero, 3));//12- motivo da inclusao
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strNovaStrig, 232));//13- brancos
Test.TxtArquivo.append(BarraCaracteres.StringOfChar(strZero, 10));//14- codigo de retorno
Test.TxtArquivo.append(str_contador);
Test.TxtArquivo.append(" \n");
cliente c = new cliente();
c.setNom_cliente(rs.getString("nom_cliente"));
c.setEndereco_leit(rs.getString("endereco_leit"));
c.setCpf(rs.getString("cpf"));
c.setCgc (rs.getString("cgc"));
c.setNom_bairro_leit (rs.getString("nom_bairro_leit"));
c.setCod_cep_leit (rs.getString("cod_cep_leit"));
c.setNum_residencial(rs.getString("num_residencial"));
c.setDat_vencto (rs.getString("dat_vencto"));
c.setDat_compra (rs.getString("dat_compra"));
c.setVal_debito (rs.getString("val_debito"));
c.setCod_programa (rs.getString("cod_programa"));
c.setNum_ligacao (rs.getString("num_ligacao"));
System.out.println(c.getNom_cliente());
listacliente.add(c);
String strTotalCliente = String.valueOf (i+1);
String strTotalDebitos = String.valueOf(c.getVal_debito());
Integer strTotalDebitosConvertido = Integer.getInteger(strTotalDebitos); //eu fiz assim por que naum da pra usar o parseInt
Integer soma = strTotalDebitosConvertido +strTotalDebitosConvertido;//quando eu comento essa linha e a de baixo roda direito mas se naum da erro quando eu clico pra fazer a consulta no banco
String somaconvertida = Integer.toString(soma);
Test.Txt3.setText(strTotalCliente);
Test.Txt4.setText(somaconvertida);
}
rs.close();
st.close();
conn.close();
// Tira todas as linhas da tabela.
DefaultTableModel dtm = (DefaultTableModel) Test.table.getModel(); // Esta linha pega o formato da sua tabela
if (dtm.getRowCount() > 0) {
for (int i1 = (dtm.getRowCount() - 1); i1 >= 0; i1--) {
dtm.removeRow(i1);
}
}
// Insere dados da lista (resultado da sua query)
cliente testec;
for (int i1 = 0; i1 < listacliente.size(); i1++) {
testec = (cliente) listacliente.get(i1);
dtm.addRow(new Object[]{testec.getNom_cliente(), testec.getEndereco_leit(),testec.getCpf(), testec.getCgc(), testec.getNom_bairro_leit(), testec.getCod_cep_leit(), testec.getNum_residencial(),testec.getDat_vencto(), testec.getdat_compra(), testec.getVal_debito(), testec.getCod_programa(), testec.getNum_ligacao()});
}
//mensagem de erro para quando ocorrer problemas na conexao com o banco de dados
}catch(SQLException e1){
System.out.println("Erro ao conectar ao banco");
e1.printStackTrace();
}finally{ // Finalizando a conexão
System.out.println("Encerrando a conexão");
}
}
public static JButton main(String[] args) {
NovoRecebeBanco app = new NovoRecebeBanco();
String url = "endereco do banco";
//app.show();
return null;
}
public static int getColumnCount() {
// TODO Auto-generated method stub
return 0;
}
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
}
}[/code]
Tenho quase certeza que eh na parte onde estou fazendo a soma que esta todo o erro, opis quando eu comento roda normal, a naum ser quando eu uso o parseInt, ai naum roda! me ajudem achar o erro por favor!