A Classe não ta salvando no BD (PostgreSQL)

4 respostas
U

A minha classe não ta salvando no banco de dados.
Roda normalmente, mas qdo vou ao banco e dou um select * from nomedatabela, aparece vazio.

private void gravarActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if ((jTextField1.getText().trim().equals(""))||(jTextField2.getText().trim().equals("")))

{

jLabel23.setText(Status: Registro possui campo(s) vazio(s).);

jTextField1.grabFocus();

}

else

{

if (operacao.trim().equals(I))

{

int con_codi;

String con_nome, con_cpf, con_rg, con_ende, con_bair, con_cida, con_esta;

String con_natu, con_dtnc, con_eciv, con_rend, con_tele, con_sexo, con_empr;

String con_emai, con_gins, con_cart, con_moti, con_rpca, con_obs, con_cep;

String comando = "insert into contribuinte (con_codi, con_nome, con_cpf, con_rg, " +

"con_ende, con_bair, con_cida, con_esta, con_natu, con_dtnc, con_eciv, con_rend, " +

"con_tele, con_sexo, con_empr, con_emai, con_gins, con_cart, con_moti, " +

con_rpca, con_obs, con_cep) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?);

String comando1 = “”;

Connection con = Conector.getTestConnection();

stmt = null;

stmt1 = null;

try

{

con_codi = Integer.parseInt (jTextField1.getText());

con_nome = jTextField2.getText();

con_cpf = jFormattedTextField1.getText();

con_rg = jFormattedTextField2.getText();

con_eciv = jComboBox1.getSelectedItem().toString();

con_ende = jTextField3.getText();

con_cida = jTextField4.getText();

con_esta = jComboBox2.getSelectedItem().toString();

con_bair = jTextField5.getText();

con_cep = jFormattedTextField3.getText();

con_tele = jFormattedTextField4.getText();

con_sexo = jComboBox3.getSelectedItem().toString();

con_dtnc = jFormattedTextField5.getText();

con_gins = jComboBox4.getSelectedItem().toString();

con_rend = jFormattedTextField6.getText();

con_rpca = jFormattedTextField7.getText();

con_natu = jTextField6.getText();

con_emai = jTextField7.getText();

con_cart = jTextField8.getText();

con_empr = jTextField9.getText();

con_moti = jTextField10.getText();

con_obs = jTextArea1.getText();
if (verificarseexiste(con_codi) == false)
    {
        stmt = con.prepareStatement(comando);
        stmt.setInt (1, con_codi);
        stmt.setString (2, con_nome);
        stmt.setString (3, con_cpf);
        stmt.setString (4, con_rg);
        stmt.setString (5, con_eciv);
        stmt.setString (6, con_ende);
        stmt.setString (7, con_cida);
        stmt.setString (8, con_esta);
        stmt.setString (9, con_bair);
        stmt.setString (10, con_cep);
        stmt.setString (11, con_tele);
        stmt.setString (12, con_sexo);
        stmt.setString (13, con_dtnc);
        stmt.setString (14, con_gins);
        stmt.setString (15, con_rend);
        stmt.setString (16, con_rpca);
        stmt.setString (17, con_natu);
        stmt.setString (18, con_emai);
        stmt.setString (19, con_cart);
        stmt.setString (20, con_empr);
        stmt.setString (21, con_moti);
        stmt.setString (22, con_obs);
        stmt.executeUpdate();
        //
        stmt1.executeUpdate();
        con.close();
        //
        limpar();
}

}

catch (Exception ex)

{

ex.printStackTrace();

}

}

}

if (operacao.trim().equals(A))

{

int con_codi;

String con_nome, con_cpf, con_rg, con_ende, con_bair, con_cida, con_esta;

String con_natu, con_dtnc, con_eciv, con_rend, con_tele, con_sexo, con_empr;

String con_emai, con_gins, con_cart, con_moti, con_rpca, con_obs, con_cep;

String comando = update contribuinte set con_nome = ? where con_codi = ?;

Connection con = Conector.getTestConnection();

stmt = null;

try

{

con_codi = Integer.parseInt (jTextField1.getText());

con_nome = jTextField2.getText();

con_cpf = jFormattedTextField1.getText();

con_rg = jFormattedTextField2.getText();

con_eciv = jComboBox1.getSelectedItem().toString();

con_ende = jTextField3.getText();

con_cida = jTextField4.getText();

con_esta = jComboBox2.getSelectedItem().toString();

con_bair = jTextField5.getText();

con_cep = jFormattedTextField3.getText();

con_tele = jFormattedTextField4.getText();

con_sexo = jComboBox3.getSelectedItem().toString();

con_dtnc = jFormattedTextField5.getText();

con_gins = jComboBox4.getSelectedItem().toString();

con_rend = jFormattedTextField6.getText();

con_rpca = jFormattedTextField7.getText();

con_natu = jTextField6.getText();

con_emai = jTextField7.getText();

con_cart = jTextField8.getText();

con_empr = jTextField9.getText();

con_moti = jTextField10.getText();

con_obs = jTextArea1.getText();
stmt.setInt (1, con_codi);
        stmt.setString (2, con_nome);
        stmt.setString (3, con_cpf);
        stmt.setString (4, con_rg);
        stmt.setString (5, con_eciv);
        stmt.setString (6, con_ende);
        stmt.setString (7, con_cida);
        stmt.setString (8, con_esta);
        stmt.setString (9, con_bair);
        stmt.setString (10, con_cep);
        stmt.setString (11, con_tele);
        stmt.setString (12, con_sexo);
        stmt.setString (13, con_dtnc);
        stmt.setString (14, con_gins);
        stmt.setString (15, con_rend);
        stmt.setString (16, con_rpca);
        stmt.setString (17, con_natu);
        stmt.setString (18, con_emai);
        stmt.setString (19, con_cart);
        stmt.setString (20, con_empr);
        stmt.setString (21, con_moti);
        stmt.setString (22, con_obs);
        stmt.executeUpdate();
        con.close();

        bloqueio(true);
        operacao = "";
      }
    catch (Exception ex)
    {
        ex.printStackTrace();
    }
    }
}

Alguém me ajude, por favor.

4 Respostas

ajinfotec

cara se não ta gerando nenhuma exeçao. verifica se isso realmente estar executando pondo ums no codigo
assim voce ve se passou pela aquela linha.

System.out.println("salvou");

se executar ta mais que estranho não ta salvando.

por forvar au postar codigo aqui no forum ponha o codigo entre as tags

tem um botam com nome Code na regiao superio do editor que faz isso para voce
ai voce digita o codigo entre essas tags.

edita o topico e faz isso que fica melhor de analizar o codigo.

U

Vou dar uma olhada e depois posto aqui.

private void gravarActionPerformed(java.awt.event.ActionEvent evt) { 
// TODO add your handling code here: 
if ((jTextField1.getText().trim().equals(""))||(jTextField2.getText().trim().equals(""))) 
{ 
jLabel23.setText("Status: Registro possui campo(s) vazio(s)."); 
jTextField1.grabFocus(); 
} 
else 
{ 
if (operacao.trim().equals("I")) 
{ 
int con_codi; 
String con_nome, con_cpf, con_rg, con_ende, con_bair, con_cida, con_esta; 
String con_natu, con_dtnc, con_eciv, con_rend, con_tele, con_sexo, con_empr; 
String con_emai, con_gins, con_cart, con_moti, con_rpca, con_obs, con_cep; 
String comando = "insert into contribuinte (con_codi, con_nome, con_cpf, con_rg, " + 
"con_ende, con_bair, con_cida, con_esta, con_natu, con_dtnc, con_eciv, con_rend, " + 
"con_tele, con_sexo, con_empr, con_emai, con_gins, con_cart, con_moti, " + 
"con_rpca, con_obs, con_cep) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"; 
String comando1 = ""; 
Connection con = Conector.getTestConnection(); 
stmt = null; 
stmt1 = null; 
try 
{ 
con_codi = Integer.parseInt (jTextField1.getText()); 
con_nome = jTextField2.getText(); 
con_cpf = jFormattedTextField1.getText(); 
con_rg = jFormattedTextField2.getText(); 
con_eciv = jComboBox1.getSelectedItem().toString(); 
con_ende = jTextField3.getText(); 
con_cida = jTextField4.getText(); 
con_esta = jComboBox2.getSelectedItem().toString(); 
con_bair = jTextField5.getText(); 
con_cep = jFormattedTextField3.getText(); 
con_tele = jFormattedTextField4.getText(); 
con_sexo = jComboBox3.getSelectedItem().toString(); 
con_dtnc = jFormattedTextField5.getText(); 
con_gins = jComboBox4.getSelectedItem().toString(); 
con_rend = jFormattedTextField6.getText(); 
con_rpca = jFormattedTextField7.getText(); 
con_natu = jTextField6.getText(); 
con_emai = jTextField7.getText(); 
con_cart = jTextField8.getText(); 
con_empr = jTextField9.getText(); 
con_moti = jTextField10.getText(); 
con_obs = jTextArea1.getText(); 

if (verificarseexiste(con_codi) == false) 
{ 
stmt = con.prepareStatement(comando); 
stmt.setInt (1, con_codi); 
stmt.setString (2, con_nome); 
stmt.setString (3, con_cpf); 
stmt.setString (4, con_rg); 
stmt.setString (5, con_eciv); 
stmt.setString (6, con_ende); 
stmt.setString (7, con_cida); 
stmt.setString (8, con_esta); 
stmt.setString (9, con_bair); 
stmt.setString (10, con_cep); 
stmt.setString (11, con_tele); 
stmt.setString (12, con_sexo); 
stmt.setString (13, con_dtnc); 
stmt.setString (14, con_gins); 
stmt.setString (15, con_rend); 
stmt.setString (16, con_rpca); 
stmt.setString (17, con_natu); 
stmt.setString (18, con_emai); 
stmt.setString (19, con_cart); 
stmt.setString (20, con_empr); 
stmt.setString (21, con_moti); 
stmt.setString (22, con_obs); 
stmt.executeUpdate(); 
// 
stmt1.executeUpdate(); 
con.close(); 
// 
limpar(); 
} 
} 
catch (Exception ex) 
{ 
ex.printStackTrace(); 
} 
} 
} 
if (operacao.trim().equals("A")) 
{ 
int con_codi; 
String con_nome, con_cpf, con_rg, con_ende, con_bair, con_cida, con_esta; 
String con_natu, con_dtnc, con_eciv, con_rend, con_tele, con_sexo, con_empr; 
String con_emai, con_gins, con_cart, con_moti, con_rpca, con_obs, con_cep; 
String comando = "update contribuinte set con_nome = ? where con_codi = ?"; 
Connection con = Conector.getTestConnection(); 
stmt = null; 
try 
{ 
con_codi = Integer.parseInt (jTextField1.getText()); 
con_nome = jTextField2.getText(); 
con_cpf = jFormattedTextField1.getText(); 
con_rg = jFormattedTextField2.getText(); 
con_eciv = jComboBox1.getSelectedItem().toString(); 
con_ende = jTextField3.getText(); 
con_cida = jTextField4.getText(); 
con_esta = jComboBox2.getSelectedItem().toString(); 
con_bair = jTextField5.getText(); 
con_cep = jFormattedTextField3.getText(); 
con_tele = jFormattedTextField4.getText(); 
con_sexo = jComboBox3.getSelectedItem().toString(); 
con_dtnc = jFormattedTextField5.getText(); 
con_gins = jComboBox4.getSelectedItem().toString(); 
con_rend = jFormattedTextField6.getText(); 
con_rpca = jFormattedTextField7.getText(); 
con_natu = jTextField6.getText(); 
con_emai = jTextField7.getText(); 
con_cart = jTextField8.getText(); 
con_empr = jTextField9.getText(); 
con_moti = jTextField10.getText(); 
con_obs = jTextArea1.getText(); 

stmt.setInt (1, con_codi); 
stmt.setString (2, con_nome); 
stmt.setString (3, con_cpf); 
stmt.setString (4, con_rg); 
stmt.setString (5, con_eciv); 
stmt.setString (6, con_ende); 
stmt.setString (7, con_cida); 
stmt.setString (8, con_esta); 
stmt.setString (9, con_bair); 
stmt.setString (10, con_cep); 
stmt.setString (11, con_tele); 
stmt.setString (12, con_sexo); 
stmt.setString (13, con_dtnc); 
stmt.setString (14, con_gins); 
stmt.setString (15, con_rend); 
stmt.setString (16, con_rpca); 
stmt.setString (17, con_natu); 
stmt.setString (18, con_emai); 
stmt.setString (19, con_cart); 
stmt.setString (20, con_empr); 
stmt.setString (21, con_moti); 
stmt.setString (22, con_obs); 
stmt.executeUpdate(); 
con.close(); 

bloqueio(true); 
operacao = ""; 
} 
catch (Exception ex) 
{ 
ex.printStackTrace(); 
} 
} 
}

Assim?

Z111

Nenhuma exceção? Nenhum erro?

operação está chegando com o valor “I” ?

U

Antes eu tava usando a classe Conector para conectar ao Banco de Dados.

package tcc;

import java.sql.Connection;
import java.sql.DriverManager;

/**
 *
 * @author User
 */
public class Conector {

    public static Connection getConnection(String driver, String url, String user, String password)
    {
        try {
            Class.forName(driver);                                  // carrega o driver parametrizado
            return DriverManager.getConnection(url,user,password); // conexão com o BD
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return null;
    }

    public static Connection getTestConnection()
    {
        return getConnection("org.postgresql.Driver","jdbc:postgresql://localhost/SAS", "root", "root" );
    }
}

Mas agora estou usando outra classe para conexão com o Banco de Dados.

package beans;
import java.sql.*;

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

/**
 *
 * @author Ugo Mello
 */
public class BD {
    public Connection connection = null;
    public ResultSet resultSet = null;
    public PreparedStatement statement = null;
    private final String DRIVER = "org.postgresql.Driver";
    private final String DATABASENAME = "SAS";
    private final String URL = "jdbc:postgresql://localhost:5432/" + DATABASENAME;
    private final String LOGIN = "root";
    private final String SENHA = "root";

    public static void main(String[] args) {
        BD bd = new BD();
        bd.getConnection();
        bd.close();
    }

    public boolean getConnection() {
        try {
            Class.forName(DRIVER);
            connection = DriverManager.getConnection(URL, LOGIN, SENHA);
            System.out.println("Conectou");
            return true;
            }
        catch (ClassNotFoundException erro) {
            System.out.println (erro.toString());
            return false;
        }
        catch (SQLException erro) {
            System.out.println(erro.toString());
            return false;
        }
    }

    public void close() {
        try {
            if (resultSet!=null)
            resultSet.close();
        }
        catch (SQLException erro) {}
        try {
            if (statement!=null)
            statement.close();
        }
        catch (SQLException erro) {}
        try {
            connection.close();
            System.out.println ("Desconectou");
        }
        catch (SQLException erro) {
            System.out.println (erro.toString());
        }
    }
}
Criado 27 de julho de 2010
Ultima resposta 28 de jul. de 2010
Respostas 4
Participantes 3