Sou iniciante e não consigo fazer uma meu executaSql funcionar, segue abaixo o erro:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at conexoes.Conecta_Banco.executaSql(Conecta_Banco.java:73)
at Views.Cargo.viewCargo.preencherTabela(viewCargo.java:241)
at Views.Cargo.viewCargo.<init>(viewCargo.java:34)
at Autenticacao.ViewiPrincipal.jmiCargosActionPerformed(ViewiPrincipal.java:655)
at Autenticacao.ViewiPrincipal.access$700(ViewiPrincipal.java:44)
at Autenticacao.ViewiPrincipal$8.actionPerformed(ViewiPrincipal.java:295)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
at java.awt.Component.processMouseEvent(Component.java:6533)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
**SEGUE O CODGO ABAIXO:**
public class Conecta_Banco {
public Statement stmt;
public ResultSet rs;
public Statement statement;
public ResultSet resultSet;
private String driver = "org.postgresql.Driver";
private String caminho = "jdbc:postgresql://localhost:5432/escola"; //"jdbc:postgresql://192.168.1.110:5432/escola";
private String usuario = "postgres";
private String senha = "17072010";
public Connection conn;
//iniciando os objetos
public Conecta_Banco() {
this.rs = rs;
this.stmt = stmt;
this.conn = conn;
}
//abre conexão com o banco
public void abreConexao() {
try {
System.setProperty("jdbc.Drivers", driver);
setConn(DriverManager.getConnection(caminho, usuario, senha));
//JOptionPane.showMessageDialog(null, "Conectado com sucesso!");
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao conectar!" + ex.getMessage());
//Logger.getLogger(ConexaoSCI.class.getName()).log(Level.SEVERE, null, ex);
}
}
//fecha conexão com o banco
public void fechaConexao() {
try {
getConn().close();
//JOptionPane.showMessageDialog(null,"banco fechado");
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Não foi possivel " + "fechar o banco de dados: " + ex.getMessage());
}
}
public boolean executarSQL(String pSQL) {
try {
//createStatement de con para criar o Statement
this.setStatement(getConn().createStatement());
// Definido o Statement, executamos a query no banco de dados
this.setResultSet(getStatement().executeQuery(pSQL));
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, ex.getMessage());
//ex.printStackTrace();
return false;
}
return true;
}
public void executaSql(String sql) {
try {
stmt = conn.createStatement(rs.TYPE_SCROLL_SENSITIVE, rs.CONCUR_READ_ONLY);
rs = stmt.executeQuery(sql);
} catch (SQLException ex) {
//JOptionPane.showMessageDialog(null,"Não foi possível "+ "executar o comando sql,"+ex+", o sql passado foi "+sql);
}
}
public int insertSQL(String pSQL) {
int status = 0;
try {
//createStatement de con para criar o Statement
this.setStatement(conn.createStatement());
// Definido o Statement, executamos a query no banco de dados
this.statement.executeUpdate(pSQL);
//consulta o ultimo id inserido
this.setResultSet(this.getStatement().executeQuery("SELECT MAX(id_disciplina) FROM tb_disciplina"));
//recupera o ultimo id inserido
while (this.resultSet.next()) {
status = this.resultSet.getInt(1);
}
//retorna o ultimo id inserido
return status;
} catch (SQLException ex) {
ex.printStackTrace();
return status;
}
}
}
POR FAVOR PRECISO DE AJUDA.