Ajuda com JTable

Esse é meu método de consultar no bancooo

public ArrayList<Agendamento> ConsultarPaciente(String nome){  
        //ArrayList que armazenara os dados da conta recuperada do banco de dados   
         ArrayList<Agendamento> resultadoConsulta = new ArrayList<Agendamento>();  
         try{  
             String sql = "SELECT NomePaciente, Hora, Servico FROM agendamento WHERE nomepaciente LIKE '"+nome+"%'";  
               
             conexao = oracleConexao.conectarBd();  
             instrucaoSQL = conexao.createStatement();  
             resultado = instrucaoSQL.executeQuery(sql);  
               
             while(resultado.next()){  
                 
                 Agendamento registro = new Agendamento();  
                 registro.setNomePaciente(resultado.getString(1));  
                 registro.setHora(resultado.getString(2));  
                 registro.setServico(resultado.getString(3));                  
                   
                 resultadoConsulta.add(registro);
                 
             }
             
         }  
         catch (SQLException sqlE){  
             JOptionPane.showMessageDialog(null, sqlE.toString(), "Não foi possivel consultar", JOptionPane.ERROR_MESSAGE);  
         }  
         finally{  
             finaliza();           
         }  
           
          return resultadoConsulta; 
     }  

//E esse joga o resultado em um  jTABLE

public void MostrarConsulta(String nome){
         jTable1.revalidate();
         ArrayList<Agendamento> registroConsulta = new ArrayList<Agendamento>();  
         GerenciamentoDados consu = new GerenciamentoDados();  
         registroConsulta = consu.ConsultarPaciente(nome);
         //Analiza se o arraylist está vazio
         if(registroConsulta.isEmpty()!=false){
             JOptionPane.showMessageDialog(null,"Não há registros com esse nome!");
         }else{
             AgendamentoModel modelo = new AgendamentoModel();  
             jTable1.setModel(modelo);   
             modelo.setAgendamentos(registroConsulta);  
               
              JOptionPane.showMessageDialog(null,">>"+registroConsulta);
         }        
         
     }

O MEU PROBLEMA É QUE ESTÃO SENDO JOGADOS NO TABLE SEMPRE O MESMO NOME DE PESSOA

NA BUSCA É COLOCADO “P”

E NO MEU BANCO CONTEM PEDRO PAULO PATRICIA PAULA

E É COLOCADO NO TABLE

PEDRO
PEDRO
PEDRO
PEDRO

O QUE SERÁ QUE TEM DE ERRADO???

esse é o meu modelo de jTABLE:

public class AgendamentoModel extends AbstractTableModel {  
   
       private List<Agendamento> agendamentos;  
   
       public void setAgendamentos(List<Agendamento> agendamentos) {  
          this.agendamentos = agendamentos;  
       }  
   
       public int getColumnCount() {  
          return 3;  
       }  
   
       @Override  
       public String getColumnName(int col) {  
          switch (col) {  
             case 0:  
                return "Nome";  
             case 1:  
                return "Hora";  
             case 2:  
                return "Serviço";  
             default:  
                return null;  
          }  
       }  
   
       public int getRowCount() {  
          return agendamentos.size();  
               
       }  
   
       public Object getValueAt(int lin, int col) {  
          if (agendamentos != null && lin >= 0 && lin < agendamentos.size()) {  
             Agendamento agendamento = agendamentos.get(lin);  
             switch (col) {  
                case 0:  
                   return agendamento.getNomePaciente();  
                case 1:  
                   return agendamento.getHora();  
                case 2:  
                   return agendamento.getServico();  
             }  
          }  
          return null;  
       }  
   
    }

Entendi que você criou este método, mas por cima não enxerguei nada errado. Apenas podia ser feito diferente com a obtenção dos dados e a construção da tabela separados. Mas o método está correto.

Qual o problema que está acontecendo?

[]s

falta umas coisinhas kinow…

editei o post…

o meu problema está descrito acima… =/

Também olhei e parece tudo ok mas tenho alguns pontos chaves a serem verificados por vc:

  1. Coloque um brake point logo após a leitura do banco de dados e certifique-se de que a lista de objetos que vc montou está correta; pode ser nesta linha return resultadoConsulta;

  2. Coloque outro brake point no método public Object getValueAt(int lin, int col) e certifique-se de que a API está pegando o objeto e o atributo corretamente.

flws

Não da pra colocar =/

da esse erro:

unreachable statement