Como fazer uma consulta ao banco de dados access e retornar no JTable?

Alguém poderia me ajudar?

No meu JFrame(formulário) eu tenho o seguinte:

1 textfield (para a pessoa entrar com o cpf do cliente);
1 JTable para retornar os valores consultados, eu defini 3 colunas no JTable(Nome,cic,telefone);
1 Jbottom com o nome Consultar;

como eu faço para consultar o banco de dados referente ao cic digitado e retornar os dados do mesmo.(nome,cic,telefone)??? Me passem como eu devo fazer, se possível passo-a-passo.

Onde eu devo colocar a condição(IF cic do textfield==cic do banco de dados) then retornar os dados. No comando do botãoo consultar???

MUITO OBRIGADO!!!

Primeiro, qual banco de dados esta usando…???

Segue um exemplo de acesso supondo que vc tenha algum conhecimento de acesso ao mysql…

DefaultTableModel modelo = (DefaultTableModel)table.getModel();//obtem o tablemodel da tabela
            RowSorter<TableModel> sorter = new TableRowSorter<TableModel>(modelo);//Cria um filtro para a tabela
            table.setRowSorter(sorter);    //seta o filtro criado

Statement stm = conn.createStatement();//cria um novo Statement para acesso ao banco de dados
ResultSet rs = stm.executeQuery("SELECT nome, cic, telefone FROM tbclientes WHERE cpf = \"" + txtCPFgetText() + "\"");//cria um ResultSet com o resultado da consulta

                while (rs.next()){//enquanto ouver registro
                    Object[] novaLinha = new Object[3];//cria um array de objetos com a quantidade igual as colunas da table
                    novaLinha[0] = rs.getString("nome");
                    novaLinha[1] = rs.getString("cic");
                    novaLinha[2] = rs.getString("telefone");
                    modelo.addRow( novaLinha );//adiciona uma nova linha ao tablemodel da tabela
                }

vc deve circular com try e catch…

Axo q deve funcionar num testei ainda…

Oww FernandoJdk, valeww pela forçaa,
o banco de dados que estou usando é o access mesmo, só que, quando eu crio o meu método consultar na classe CadastroCliente, ele não consegue vizualizar o txtconcin.gettext() ->(este é o textfield do JFrame ConsultarCliente que eu criei)
entaum segue abaixo o código:

package locadora;
import java.sql.;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.sql.
;

/**
*

  • @author Fam
    */
    public class CadastroCliente {

    private String nomecliente;
    private String cic;
    private String endereco;
    private String telefone;
    private String pendencia;
    private String datacliente;
    private String tipocartao;
    private String outros;

    public Connection PrjSoft;
    public Statement stmSQL;
    public ResultSet resSQL;

    /** Creates a new instance of CadastroCliente */
    public CadastroCliente() {

    try{
    Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
    PrjSoft = DriverManager.getConnection(“jdbc:odbc:projetodesoftware”,"","");
    stmSQL = PrjSoft.createStatement();
    }
    catch(ClassNotFoundException ex){
    System.out.println(“Erro na Classe do driver JDBC”);
    }
    catch(SQLException ex){
    System.out.println(“Erro ao conectar no banco. Nro:” + ex.getMessage());
    }
    }

public ResultSet consultar()
{
try
{
resSQL = stmSQL.executeQuery(“Select * FROM clientes where cic = “” + txtconcic.gettext() + “””);
return resSQL;
}
catch (Exception e)
{
System.out.println("ERRO : " + e.getMessage());
return resSQL;
}
}
}

CÓDIGO DO BOTÃO

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

// TODO adicione seu código de manipulação aqui:
CadastroCliente objcon = new CadastroCliente();
ResultSet lista = objcon.consultar();
try
{
int nrolinha=0;
while(lista.next());
{
jtbcliente.setValueAt(lista.getString(“nomecliente”),nrolinha,0);
jtbcliente.setValueAt(lista.getString(“cic”),nrolinha,1);
jtbcliente.setValueAt(lista.getString(“endereco”),nrolinha,2);
jtbcliente.setValueAt(lista.getString(“telefone”),nrolinha,3);
nrolinha++;
}
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}

o que será heinnn???

OBS*: txtconcic(textfield) do JFrame ConsultarCliente.
será que é o caso dele naum ser público??

Obrigadãooo!!!

Olha o que eu tentei fazerr, mais naum deu certo naummm

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

// TODO adicione seu código de manipulação aqui:
CadastroCarro objcarro = new CadastroCarro();
ResultSet listacarros = objcarro.consultarcarros();
try
{
int nrolinha=0;
if(txtnomecarro.setText()==listacarros.getString(“nomecarro”))
{
tbcarro.setValueAt(listacarros.getString(“nomecarro”),nrolinha,0);
tbcarro.setValueAt(listacarros.getString(“tipo”), nrolinha, 1);
tbcarro.setValueAt(listacarros.getString(“ano”), nrolinha, 2);
}
}
catch (Exception e )
{
System.out.println(e.getMessage());
}
}

Não daria pra fazer algo + ou - assim???

Valewww!!!

[quote]CÓDIGO DO BOTÃO
[/quote]
Tente fazer o que o fernando falou só que fazendo a busca no banco de dados direto do evento do JButton:

[code]private void nomeDoSeuEvento(java.awt.event.ActionEvent evt) {
try {
Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
String url = “jdbc:odbc:projetodesoftware”;
String usuario = “”;
String senha = “”;
Connection con;
con = DriverManager.getConnection(url, usuario, senha);
PreparedStatement ps = con.prepareStatement(“Select * FROM clientes where cic = ?”);
ps.setString(1, txtconcic.getText());
ResultSet rs = ps.executeQuery();

        while (rs.next()){                
                Object[] novaLinha = new Object[3];//cria um array de objetos com a quantidade igual as colunas da table   
                novaLinha[0] = rs.getString("nome");   
                novaLinha[1] = rs.getString("cic");   
                novaLinha[2] = rs.getString("telefone");   
        
                modelo.addRow( novaLinha );//adiciona uma nova linha ao tablemodel da tabela 
         }

         con.close();
   }catch (ClassNotFoundException e ){     
           JOptionPane.showMessageDialog(null, "Falha na conexão com o banco de dados.\n" + e.getMessage());     
                   e.printStackTrace();     
   }catch (SQLException e){     
                   e.printStackTrace();
   }

}[/code]
T+