Ola galera, estou desenvolvendo uma aplicação com a seguinte funcionalidade, onde o usuário ira informar alguns dados sobre características de um determinado carro, tenho uma classe com o nome de “InsereDados” com o seguinte método “InserirAutomoveis” onde este método recebe de outra classe os parâmetros que foram informados pelo usuário. O problema e o seguinte, ao inserir os dados no banco de dados(PostgreSQL), acontece o seguinte erro;
Exception in thread "main" java.lang.NullPointerException
at bancodadoscarro.InsereDados.InserirAutomoveis(InsereDados.java:26)
at bancodadoscarro.Main.main(Main.java:37)
Java Result: 1
O erro aponta para a seguinte linha da classe;
stmp.setFloat(4,valorCarro);
Como poderei estar procedendo para que possa ser inserido este dado sem ocorrer nenhum problema.
Segue abaixo o fonte da classe “InserirAutomoveis”;
Desde ja agradeço.
package bancodadoscarro;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;
/**
*
* @author Diego V Silva
*/
public class InsereDados {
public static void InserirAutomoveis(String nomeCarro, String marcaCarro, String anoCarro, Float valorCarro, String proprietarioCarro){
try {
String sql = "insert into carro(nome_carro,marca_carro,ano_carro,valor_carro,proprietario_carro) values(?,?,?,?,?)";
PreparedStatement stmp = ConectaBanco.con.prepareStatement(sql);
stmp.setString(1, nomeCarro);
stmp.setString(2,marcaCarro);
stmp.setString(3,anoCarro);
stmp.setFloat(4,valorCarro);
stmp.setString(5,proprietarioCarro);
stmp.executeUpdate();
ConectaBanco.con.commit();
JOptionPane.showMessageDialog(null,"Dados inseridos com sucesso!","Mensagem", JOptionPane.WARNING_MESSAGE);
} catch (SQLException eSQL) {
eSQL.printStackTrace();
JOptionPane.showMessageDialog(null,"Falha ao inserir os dados!" + "Mensagem: "+eSQL.getMessage(), "Erro",JOptionPane.ERROR_MESSAGE);
}
}