• 0

Question

Boa tarde . 

Sou novo na programação. Estou desenvolvendo uma aplicação Java onde quando eu tento fazer uma busca no banco de dados , o sistema retorna um erro :


'' Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: com.mysql.jdbc.JDBC4Connection cannot be cast to com.mysql.jdbc.PreparedStatement
    at ForcaIsometrica.Dados.consulta(Dados.java:62)
    at ForcaIsometrica.ConsultaPaciente.btnBuscarActionPerformed(ConsultaPaciente.java:321)
    at ForcaIsometrica.ConsultaPaciente.access$000(ConsultaPaciente.java:16)
    at ForcaIsometrica.ConsultaPaciente$1.actionPerformed(ConsultaPaciente.java:89)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
''

 

Esse é o código da minha classe :

 

private void btnPesquisaBucarActionPerformed(java.awt.event.ActionEvent evt) {                                                 
        // Botão Buscar

        dados d = new dados();
        d.conecta("localhost", "projeto", "root", "123456");
        ResultSet retorno = d.consulta("select * from cadatendimentos where membro = '" + txtPesquisaMembros.getText() + "'");
        try {
            while(retorno.next()) {
                txtPesquisaMembros.setText(retorno.getString("membro"));
                txtAtendMembro.setText(retorno.getString("membro"));
                txtAtendPastor.setText(retorno.getString("pastor"));
                txtAtendData.setText(retorno.getString("data_atend"));
                txtAtendLocal.setText(retorno.getString("local_atend"));
                txtAtendHora.setText(retorno.getString("hora"));
                txtAtendObs.setText (retorno.getString("observacao"));
                txtIDAtend.setText (retorno.getString("idatendimento"));
                
                
                
                
            }
        } catch(SQLException e) {
            System.out.println("Houve um erro: " + e);
        }
    }                                      

 

"

Esse é o código do meu método na minha classe Dao ( que se chama Dados)

" //consulta
        
    public ResultSet consulta(String consulta) {
        ResultSet rs = null;
        try {
            PreparedStatement stmt  = (PreparedStatement) Conectar.getConnection();
            rs = stmt.executeQuery();
        } catch (SQLException e) {
            System.err.println("Erro ao realizar Consulta: " + e);
        }
        return rs;

    }   "

 

Código da minha conexão:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package connection;


import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.Connection;
//mport java.sql.Connection;
import java.sql.DriverManager;
//import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import static java.time.Instant.now;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author user
 */
public class Conectar {
        
    private static final String DRIVER = "com.mysql.jdbc.Driver";
    private static final String URL = "jdbc:mysql://localhost:3306/forca_isometrica";
    private static final String USER="root";
    private static final String PASS = "Pp$aappcp" ;
    
    public static Connection getConnection(){
        
        try {
            Class.forName(DRIVER);
            
            return (Connection) DriverManager.getConnection(URL, USER, PASS);
        } catch (ClassNotFoundException | SQLException ex) {
            
            throw new RuntimeException("Erro na conexão: ",ex);
           // Logger.getLogger(Conectar.class.getName()).log(Level.SEVERE, null, ex);
        }
    
    }
    // fechando a Conexão
 
    public static void closeConnection(Connection Con){
         try{
             if(Con != null){
             
                 Con.close();
             }
         
         }catch(SQLException ex){
         
             Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
         }
            
    }
    
    
    
    //Fechando o PreparedStatment
    public static void closeConnection(Connection Con, PreparedStatement stmt) {
        closeConnection(Con);
        try{
             if(stmt != null){
             
                 stmt.close(); 
             }
         
         }catch(SQLException ex){
         
             Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
         
         
         }
    
    }
    
    // Fechando o ResultSet
    public static void closeConnection(Connection Con, PreparedStatement stmt, ResultSet rs) {
        closeConnection(Con , stmt);
        try{
             if(rs != null){
             
                 rs.close(); 
             }
         
         }catch(SQLException ex){
         
             Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
         
         }
    
    }
    
}

 "

 

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this