estou com o seguinte problema,quando eu foi efetuar uma busca na minha tabela ele me retorna alguns campos só e não alocados em suas colunas. não sei o pq disso nunca tinha acontecido.se alguém poder me ajudar agradeço.
segue a imagem
codigo do frame
private void limparTabela(){
dtm.setNumRows(0);
}
private void prencherTabela(){
try {
HorarioServicos ps = ServicosFactory.getHorarioServicos();
ArrayList<HorarioVO> prod = new ArrayList<>();
prod = ps.buscarHorario();
for(int i = 0; i < prod.size(); i++){
dtm.addRow(new String[]{
String.valueOf(prod.get(i).getIdhorario()),
String.valueOf(prod.get(i).getNomecli()),
String.valueOf(prod.get(i).getTelefone()),
String.valueOf(prod.get(i).getHora()),
String.valueOf(prod.get(i).getMinuto())
});
}//fecha for
jtAgenda.setModel(dtm);
} catch (Exception e) {
JOptionPane.showMessageDialog(
null,
"erro ao prencher tabela!",
"Mensagem de erro",
JOptionPane.ERROR_MESSAGE);
}//fecha catch
}//fecha prencher tabela
private void deletar() {
try {
int linha = jtAgenda.getSelectedRow();
if (linha == -1) {
JOptionPane.showMessageDialog(
null,
"Você não selecionou nenhuma linha!",
"Mensagem de atenção",
JOptionPane.INFORMATION_MESSAGE);
} else {
HorarioServicos ps = ServicosFactory.getHorarioServicos();
String idProduto = (String) jtAgenda.getValueAt(linha, 0);
ps.deletar(Integer.parseInt(idProduto));
JOptionPane.showMessageDialog(
null,
"horario excluido com sucesso!" ,
"Mensagem de confirmação",
JOptionPane.INFORMATION_MESSAGE);
}//fecha else
} catch (Exception e) {
JOptionPane.showMessageDialog(
null,
"erro ao deletar!",
"Mensagem de erro",
JOptionPane.ERROR_MESSAGE);
}//fecha catch
}//fecha deletar
private void filtrar(){
try {
if (jtPesquisa.getText().isEmpty()) {
prencherTabela();
}else{
HorarioServicos ps = ServicosFactory.getHorarioServicos();
String pesquisa = (String) jcbPesquisa.getSelectedItem();
String query;
switch(pesquisa){
case "Código":
query = "where idhorario = " + jtPesquisa.getText();
break;
case "Cliente":
query = "where nomecli like '%"+ jtPesquisa.getText() + "%'";
break;
case "Telefone":
query = "where telefone like '%"+ jtPesquisa.getText() + "%'";
break;
case "Horas":
query = "where hora like '%"+ jtPesquisa.getText() + "%'";
break;
default:
query = "where minuto = "+jtPesquisa.getText();
break;
}
ArrayList<HorarioVO> prod = new ArrayList<>();
prod = ps.filtrarHorario(query);
for (int i = 0; i < prod.size(); i++) {
dtm.addRow(new String[]{
String.valueOf(prod.get(i).getIdhorario()),
String.valueOf(prod.get(i).getNomecli()),
String.valueOf(prod.get(i).getHora()),
String.valueOf(prod.get(i).getMinuto())
});
}//fecha for
jtAgenda.setModel(dtm);
}//fecha else
} catch (Exception e) {
JOptionPane.showMessageDialog(
null,
"erro ao buscar dados!",
"Mensagem de erro",
JOptionPane.ERROR_MESSAGE);
}//fecha catch
}//fecha filtrar