Boa tarde pessoal. Estou desenvolvendo um sisteminha e estou tentando fazer a interação de uma JFrame (tela) com o banco de dados para consultar determinados dados, mas está dando este erro: Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException!
os cógigos são esses:
Tela:private void jBBuscarActionPerformed(java.awt.event.ActionEvent evt) {
BD_Consulta objConsu = new BD_Consulta();
if(jRBProjeto.isSelected()){
//nomeTabela = jRBProjeto.getText();
condBusca = jTFBusca.getText();
if(condBusca.equals("")){
objConsu.consultaProjeto();
}
else{
objConsu.consultaProjeto(condBusca);
}
}
else if(jRBProfessor.isSelected()){
//nomeTabela = jRBProfessor.getText();
condBusca = jTFBusca.getText();
if(condBusca.equals("")){
objConsu.consultaProfessor();
}
else
objConsu.consultaProfessor(condBusca);
}
else{
//nomeTabela = jRBAluno.getText();
condBusca = jTFBusca.getText();
if(condBusca.equals("")){
objConsu.consultaAluno();
}
else
objConsu.consultaAluno(condBusca);
}
}
public void consultaProjeto(String titulo){
this.titulo = titulo;
String query = "SELECT * FROM projeto WHERE projeto.titulo="+titulo;
con.consultar(query);
} // Fim do método consultaProfessor()
public void consultaProjeto(){
String query = "SELECT * FROM projeto";
con.consultar(query);
} // Fim do método consultaProfessor()
public void consultar(String query){
conectar();
try {
resultSet = comando.executeQuery(query);
Mostrar obj = new Mostrar(resultSet); // Instancia a classe Mostrar
//obj. //chamará o método para mostrar o conjunto
metaData = resultSet.getMetaData();
int nColunas = metaData.getColumnCount();
for ( int i = 1; i <= nColunas; i++ ) {
System.out.printf( "%-8s\t", metaData.getColumnName( i ));
}
System.out.println(); // Quebra de linha
// Imprime cada linha da tabela resposta
while (resultSet.next()) { // pega a próxima linha até o final
for ( int i = 1; i <= nColunas; i++ ) {
System.out.printf( "%-8s\t", resultSet.getObject( i ));
}
System.out.println();
} // fim do while
} catch (SQLException ex) {
Logger.getLogger(Conexao.class.getName()).log(Level.SEVERE, null, ex);
}
finally{
fechar();
}
}
void conectar() {
try {
Class.forName( "org.postgresql.Driver" ); // carrega classe de driver do banco de dados
// estabelece conexão com o banco de dados
conexao = DriverManager.getConnection( url, user, senha);
// cria Statement para consultar banco de dados
comando = conexao.createStatement();
System.out.println("Conectado!");
} catch (ClassNotFoundException e) {
imprimeErro("Erro ao carregar o driver", e.getMessage());
} catch (SQLException e) {
imprimeErro("Erro ao conectar", e.getMessage());
}
} // Fim do método conectar()
// Método privado que fecha a conexão com o Banco de Dados
void fechar() {
try {
comando.close();
conexao.close();
System.out.println("Conexão Fechada");
} catch (SQLException e) {
imprimeErro("Erro ao fechar conexão", e.getMessage());
}
} // Fim do método fechar()
// Método privado que imprime mensagens de erro provenientes Exceções
void imprimeErro(String msg, String msgErro) {
JOptionPane.showMessageDialog(null, msg + ": " + msgErro, "Erro crítico", 0);
System.err.println(msg);
System.out.println(msgErro);
//System.exit(0);
} // Fim do método imprimeErro()