JTable não atualiza as informações no momento que alguém faz uma pesquisa na JTextField

Saudações Gujianas.

Estou com o seguinte problema. Eu tenho um API onde tem uma um JTextField de pesquisa. Ou seja, no momento que alguém digita alguma informação a minha JTable vai filtrar estas informações para trazer a informação desejada. Fiz um teste com meu Sysout e as informações estão sendo passadas. Segue código e uma print.

package br.com.FrontEnd;

import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.text.MaskFormatter;

import br.com.BackEnd.ClasseIncluirCliente;
import br.com.BackEnd.ClasseJTable;
import br.com.BackEnd.PersisitirDadosBanco;

public class ClasseButton extends ClasseTela {

static JButton jbIncluir;
static JButton jbEditar;
static JButton jbExcluir;
static JButton jbSalvar;

static JTextField jtfNomeEmpresaEdit;
static JTextField jtfAnyDeskEdit;
static JTextField jtfTeamViewerEdit;
static JTextArea jtfObservacaoEdit;
static JTextField jtfTelefoneEdit;
static JTextField jtfCelularEdit;

static JTextField jtfNomeEmpresa;
static JTextField jtfAnyDesk;
static JTextField jtfTeamViewer;
static JTextField jtfPesquisa;
static JTextArea jtfObservacao;
static JLabel contCodigo;
static JLabel jlPrincipal;
static JLabel contID;
static JFormattedTextField jtfTelefone;
static JFormattedTextField jtfCelular;
static JTable table;

public void Botao() {

	jbIncluir = new JButton("Incluir");
	jbIncluir.setBounds(30, 260, 500, 20);
	jbIncluir.setBackground(new java.awt.Color(55, 100, 79));
	jbIncluir.setVisible(true);
	jpanelPrincipal.add(jbIncluir);

	jbExcluir = new JButton("Excluir");
	jbExcluir.setBounds(175, 700, 65, 20);
	jbExcluir.setBackground(new java.awt.Color(205, 0, 0));
	jbExcluir.setVisible(true);
	jpanelPrincipal.add(jbExcluir);

}

public void BotaoSalvar() {

	jbSalvar = new JButton("Salvar");
	jbSalvar.setBounds(30, 520, 100, 20);
	jbSalvar.setBackground(new java.awt.Color(135, 206, 235));
	jbSalvar.setVisible(true);
	jpTabela.add(jbSalvar);

}

public void CampoEmpresa() {

	JLabel nomeEmpresa = new JLabel("Nome da Empresa *");
	nomeEmpresa.setBounds(30, -10, 150, 70);
	nomeEmpresa.setForeground(Color.WHITE);
	nomeEmpresa.setFont(new Font("Arial", Font.BOLD + Font.ITALIC, 15));
	jpanelPrincipal.add(nomeEmpresa);
	nomeEmpresa.setVisible(true);

	jtfNomeEmpresa = new JTextField();
	jtfNomeEmpresa.setBounds(30, 40, 500, 27);
	jtfNomeEmpresa.setBackground(new java.awt.Color(205, 183, 181));
	jtfNomeEmpresa.setVisible(true);
	jpanelPrincipal.add(jtfNomeEmpresa);

	JLabel anyDesk = new JLabel("AnyDesk *");
	anyDesk.setBounds(30, 50, 150, 70);
	anyDesk.setForeground(Color.WHITE);
	anyDesk.setFont(new Font("Arial", Font.BOLD + Font.ITALIC, 15));
	jpanelPrincipal.add(anyDesk);
	anyDesk.setVisible(true);

	jtfAnyDesk = new JTextField();
	jtfAnyDesk.setBounds(30, 100, 500, 25);
	jtfAnyDesk.setBackground(new java.awt.Color(205, 183, 181));
	jtfAnyDesk.setVisible(true);
	jpanelPrincipal.add(jtfAnyDesk);

	JLabel teamViewer = new JLabel("TeamViewer");
	teamViewer.setBounds(30, 110, 150, 70);
	teamViewer.setForeground(Color.WHITE);
	teamViewer.setFont(new Font("Arial", Font.BOLD + Font.ITALIC, 15));
	teamViewer.setVisible(true);
	jpanelPrincipal.add(teamViewer);

	jtfTeamViewer = new JTextField();
	jtfTeamViewer.setBounds(30, 160, 500, 25);
	jtfTeamViewer.setBackground(new java.awt.Color(205, 183, 181));
	jtfTeamViewer.setVisible(true);
	jpanelPrincipal.add(jtfTeamViewer);

	JLabel observacao = new JLabel("Observação");
	observacao.setBounds(550, 12, 100, 25);
	observacao.setForeground(Color.WHITE);
	observacao.setFont(new Font("Arial", Font.BOLD + Font.ITALIC, 15));
	jpanelPrincipal.add(observacao);
	observacao.setVisible(true);

	jtfObservacao = new JTextArea();
	jtfObservacao.setBackground(new java.awt.Color(205, 183, 181));
	jtfObservacao.setFont(new Font("Arial", Font.PLAIN, 15));

	JScrollPane scroll = new JScrollPane(jtfObservacao);
	// scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
	scroll.setBounds(550, 40, 460, 235);
	scroll.setBackground(new java.awt.Color(55, 79, 79));
	jpanelPrincipal.add(scroll);
	scroll.setVisible(true);

	JLabel jlTelefone = new JLabel("Telefone");
	jlTelefone.setBounds(30, 170, 150, 70);
	jlTelefone.setForeground(Color.WHITE);
	jlTelefone.setFont(new Font("Arial", Font.BOLD + Font.ITALIC, 15));
	jpanelPrincipal.add(jlTelefone);
	jlTelefone.setVisible(true);

	MaskFormatter telefone = new MaskFormatter();
	try {
		telefone = new MaskFormatter("(##)####-####");
		telefone.setPlaceholderCharacter('_');
	} catch (ParseException excp) {
		System.err.println(excp.getMessage());

	}

	jtfTelefone = new JFormattedTextField(telefone);
	jtfTelefone.setBounds(30, 220, 100, 25);
	jtfTelefone.setBackground(new java.awt.Color(205, 183, 181));
	jtfTelefone.setVisible(true);
	jpanelPrincipal.add(jtfTelefone);

	JLabel jlCelular = new JLabel("Celular");
	jlCelular.setBounds(150, 170, 150, 70);
	jlCelular.setForeground(Color.WHITE);
	jlCelular.setFont(new Font("Arial", Font.BOLD + Font.ITALIC, 15));
	jpanelPrincipal.add(jlCelular);
	jlCelular.setVisible(true);

	MaskFormatter celular = new MaskFormatter();
	try {
		celular = new MaskFormatter("(##)#####-####");
		celular.setPlaceholderCharacter('_');
	} catch (ParseException excp) {
		System.err.println(excp.getMessage());

	}

	jtfCelular = new JFormattedTextField(celular);
	jtfCelular.setBounds(150, 220, 110, 25);
	jtfCelular.setBackground(new java.awt.Color(205, 183, 181));
	jtfCelular.setVisible(true);
	jpanelPrincipal.add(jtfCelular);

	JLabel pesquisa = new JLabel("Pesquisar");
	pesquisa.setBounds(292, 195, 100, 25);
	pesquisa.setForeground(Color.WHITE);
	pesquisa.setBackground(new java.awt.Color(0, 0, 0));
	pesquisa.setFont(new Font("Arial", Font.BOLD + Font.ITALIC, 15));
	jpanelPrincipal.add(pesquisa);
	pesquisa.setVisible(true);

	jtfPesquisa = new JTextField();
	jtfPesquisa.setBounds(290, 220, 240, 25);
	jtfPesquisa.setBackground(new java.awt.Color(205, 183, 181));
	jtfPesquisa.setVisible(true);
	jpanelPrincipal.add(jtfPesquisa);

	Pesquisa(PersisitirDadosBanco.ConsultaDB(""));

	ExecutarBotoes();
	Excluir();

}

public static void PanelEditavel(ClasseIncluirCliente selecionarLinha) {

	contCodigo = new JLabel();
	contCodigo.setText(selecionarLinha.getCodigo());
	contCodigo.setBounds(440, 12, 100, 25);
	contCodigo.setForeground(new java.awt.Color(255, 0, 0));
	contCodigo.setFont(new Font("Arial", Font.BOLD, 15));
	jpTabela.add(contCodigo);
	contCodigo.setVisible(true);

	jtfNomeEmpresaEdit = new JTextField();
	jtfNomeEmpresaEdit.setBounds(30, 40, 500, 25);
	jtfNomeEmpresaEdit.setBackground(new java.awt.Color(205, 183, 181));
	jtfNomeEmpresaEdit.setVisible(true);
	jtfNomeEmpresaEdit.setText(selecionarLinha.getNomeEmpresa());
	jpTabela.add(jtfNomeEmpresaEdit);

	jtfAnyDeskEdit = new JTextField();
	jtfAnyDeskEdit.setBounds(30, 100, 500, 25);
	jtfAnyDeskEdit.setBackground(new java.awt.Color(205, 183, 181));
	jtfAnyDeskEdit.setVisible(true);
	jtfAnyDeskEdit.setText(selecionarLinha.getAnyDesk());
	jpTabela.add(jtfAnyDeskEdit);

	jtfTeamViewerEdit = new JTextField();
	jtfTeamViewerEdit.setBounds(30, 160, 500, 25);
	jtfTeamViewerEdit.setBackground(new java.awt.Color(205, 183, 181));
	jtfTeamViewerEdit.setVisible(true);
	jtfTeamViewerEdit.setText(selecionarLinha.getTeamViewer());
	jpTabela.add(jtfTeamViewerEdit);

	jtfObservacaoEdit = new JTextArea();
	jtfObservacaoEdit.setBackground(new java.awt.Color(205, 183, 181));
	jtfObservacaoEdit.setFont(new Font("Arial", Font.PLAIN, 15));
	jtfObservacaoEdit.setText(selecionarLinha.getObservacao());

	JScrollPane scroll = new JScrollPane(jtfObservacaoEdit);
	// scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
	scroll.setBounds(30, 300, 500, 220);
	scroll.setBackground(new java.awt.Color(55, 79, 79));
	jpTabela.add(scroll);
	scroll.setVisible(true);

	MaskFormatter telefone = new MaskFormatter();
	try {
		telefone = new MaskFormatter("(##)####-####");
		telefone.setPlaceholderCharacter('_');
	} catch (ParseException excp) {
		System.err.println(excp.getMessage());

	}

	jtfTelefoneEdit = new JFormattedTextField(telefone);
	jtfTelefoneEdit.setBounds(30, 220, 100, 25);
	jtfTelefoneEdit.setBackground(new java.awt.Color(205, 183, 181));
	jtfTelefoneEdit.setVisible(true);
	jtfTelefoneEdit.setText(selecionarLinha.getTelefone());
	jpTabela.add(jtfTelefoneEdit);

	MaskFormatter celular = new MaskFormatter();
	try {
		celular = new MaskFormatter("(##)#####-####");
		celular.setPlaceholderCharacter('_');
	} catch (ParseException excp) {
		System.err.println(excp.getMessage());

	}

	jtfCelularEdit = new JFormattedTextField(celular);
	jtfCelularEdit.setBounds(150, 220, 110, 25);
	jtfCelularEdit.setBackground(new java.awt.Color(205, 183, 181));
	jtfCelularEdit.setVisible(true);
	jtfCelularEdit.setText(selecionarLinha.getCelular());
	jpTabela.add(jtfCelularEdit);

}

public void ExecutarBotoes() {

	jbIncluir.addActionListener(new ActionListener() {

		ClasseIncluirCliente cliente = new ClasseIncluirCliente();
		PersisitirDadosBanco persisti = new PersisitirDadosBanco();

		@Override
		public void actionPerformed(ActionEvent e) {

			if (jtfNomeEmpresa.getText().isEmpty() || jtfAnyDesk.getText().isEmpty()) {

				JOptionPane.showMessageDialog(null,
						"Ops,você não inseriru dados da Empresa e do AnyDesk! \nPor favor Verifique!", "Aviso",
						JOptionPane.WARNING_MESSAGE);

			} else {

				cliente.setNomeEmpresa(jtfNomeEmpresa.getText());
				cliente.setAnyDesk(jtfAnyDesk.getText());
				cliente.setTeamViewer(jtfTeamViewer.getText());
				cliente.setTelefone(jtfTelefone.getText());
				cliente.setCelular(jtfCelular.getText());
				cliente.setObservacao(jtfObservacao.getText());

				jtfNomeEmpresa.setText("");
				jtfAnyDesk.setText("");
				jtfTeamViewer.setText("");
				jtfTelefone.setText("");
				jtfCelular.setText("");
				jtfObservacao.setText("");

				persisti.IncluirDB(cliente);

				List<ClasseIncluirCliente> buscarTable = PersisitirDadosBanco.ConsultaDB("");

				ClasseJTable modelo = new ClasseJTable(buscarTable);
				table.setModel(modelo);

			}
		}
	});

}

public void Pesquisa(List<ClasseIncluirCliente> buscar) {

	jtfPesquisa.addKeyListener(new KeyListener() {

		@Override
		public void keyTyped(KeyEvent e) {

			List<ClasseIncluirCliente> buscarDados = new ArrayList<>();

			String consulta = jtfPesquisa.getText();

			for (ClasseIncluirCliente cliente : buscar) {

				if (cliente.getCodigo().contains(consulta) || cliente.getNomeEmpresa().contains(consulta)
						|| cliente.getAnyDesk().contains(consulta) || cliente.getTeamViewer().contains(consulta)
						|| cliente.getTelefone().contains(consulta) || cliente.getCelular().contains(consulta)) {

					buscarDados.add(cliente);

					System.out.println(consulta);

				}

			}

			List<ClasseIncluirCliente> atualizaTabela = PersisitirDadosBanco.ConsultaDB("");

			ClasseJTable atualiza = new ClasseJTable(atualizaTabela);
			table.setModel(atualiza);

		}

		@Override
		public void keyReleased(KeyEvent e) {

		}

		@Override
		public void keyPressed(KeyEvent e) {

		}
	});

}

public void Table() {

	List<ClasseIncluirCliente> buscarTable = PersisitirDadosBanco.ConsultaDB("");

	ClasseJTable modelo = new ClasseJTable(buscarTable);

	table = new JTable();
	table.setModel(modelo);

	JScrollPane scrollPanel = new JScrollPane(table);
	scrollPanel.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
	scrollPanel.setBounds(20, 300, 1000, 400);
	scrollPanel.setBackground(new java.awt.Color(55, 79, 79));
	scrollPanel.setViewportView(table);
	jpanelPrincipal.add(scrollPanel);
	scrollPanel.setVisible(true);

	table.addMouseListener(new MouseListener() {

		@Override
		public void mouseReleased(MouseEvent e) {

		}

		@Override
		public void mousePressed(MouseEvent e) {

		}

		@Override
		public void mouseExited(MouseEvent e) {

		}

		@Override
		public void mouseEntered(MouseEvent e) {

		}

		@SuppressWarnings("static-access")
		@Override
		public void mouseClicked(MouseEvent e) {

			if (e.getClickCount() == 2) {

				int linha = table.getSelectedRow();

				if (table.getSelectedRow() >= 0) {

					int selecionarLinha = Integer.parseInt((String) table.getValueAt(linha, 0));

					ClasseIncluirCliente cliente = PersisitirDadosBanco.SelecionarID(selecionarLinha);

					cliente.getCodigo();

					ClasseLabel telaEditavel = new ClasseLabel();
					telaEditavel.TelaTable();
					telaEditavel.JTableEdit();

					ClasseButton editarTela = new ClasseButton();
					editarTela.PanelEditavel(cliente);
					editarTela.BotaoSalvar();
					editarTela.BotaoSalvarAction(cliente);

					jframePrincipal.dispose();

				}
			} else if ((e.getModifiers() & MouseEvent.BUTTON3_MASK) != 0) {

				JMenuBar menuCopiar = new JMenuBar();
				menuCopiar.setBounds(0, 0, 80, 80);
				table.add(menuCopiar);
				menuCopiar.setVisible(true);

				JMenu copiar = new JMenu("Copiar");
				copiar.setBounds(0, 0, 80, 80);
				copiar.add(menuCopiar);
				copiar.setVisible(true);

			}

		}
	});

}

public void BotaoSalvarAction(ClasseIncluirCliente cliente) {

	ClasseIncluirCliente update = new ClasseIncluirCliente();
	PersisitirDadosBanco salvarUpdate = new PersisitirDadosBanco();

	jbSalvar.addActionListener(new ActionListener() {

		@Override
		public void actionPerformed(ActionEvent arg0) {
			if (jtfNomeEmpresaEdit.getText().isEmpty() || jtfAnyDeskEdit.getText().isEmpty()) {

				JOptionPane.showMessageDialog(null,
						"Ops,você não inseriru dados da Empresa e do AnyDesk! \nPor favor Verifique!", "Aviso",
						JOptionPane.WARNING_MESSAGE);

			} else {

				jfTelaEditar.dispose();
				TelaPrincipal();

				update.setCodigo(cliente.getCodigo());
				update.setNomeEmpresa(jtfNomeEmpresaEdit.getText());
				update.setAnyDesk(jtfAnyDeskEdit.getText());
				update.setTeamViewer(jtfTeamViewerEdit.getText());
				update.setTelefone(jtfTelefoneEdit.getText());
				update.setCelular(jtfCelularEdit.getText());
				update.setObservacao(jtfObservacaoEdit.getText());

				jtfNomeEmpresaEdit.setText("");
				jtfAnyDeskEdit.setText("");
				jtfTeamViewerEdit.setText("");
				jtfTelefoneEdit.setText("");
				jtfCelularEdit.setText("");
				jtfObservacaoEdit.setText("");

				salvarUpdate.SalvarDB(update);

				List<ClasseIncluirCliente> atualizaTable = PersisitirDadosBanco.ConsultaDB("");

				ClasseJTable atualizaModelo = new ClasseJTable(atualizaTable);
				table.setModel(atualizaModelo);

			}

		}
	});

}

public void Excluir() {

	jbExcluir.addActionListener(new ActionListener() {

		@Override
		public void actionPerformed(ActionEvent e) {

			int linha = table.getSelectedRow();

			if (table.getSelectedRow() >= 0) {

				if (JOptionPane.showConfirmDialog(null, "Tem certeza que deseja fazer a exclusão?", "Aviso",
						JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_NO_OPTION) {

					int selecionarLinha = Integer.parseInt((String) table.getValueAt(linha, 0));

					ClasseIncluirCliente cliente = PersisitirDadosBanco.SelecionarID(selecionarLinha);

					PersisitirDadosBanco excluirLinhaDB = new PersisitirDadosBanco();
					excluirLinhaDB.ExcluirDB(cliente);

					List<ClasseIncluirCliente> atualizaTable = PersisitirDadosBanco.ConsultaDB("");

					ClasseJTable atualizaModelo = new ClasseJTable(atualizaTable);
					table.setModel(atualizaModelo);

					JOptionPane.showMessageDialog(null, "Registro excluído com sucesso!", "Aviso",
							JOptionPane.INFORMATION_MESSAGE);

				}
			} else if (jbExcluir.isEnabled()) {

				JOptionPane.showMessageDialog(null,
						"Ops! Você não selecionou nenhum registro. \nPor favor, verifique!", "Aviso",
						JOptionPane.WARNING_MESSAGE);
			}
		}
	});

}

}

Agora o teste com o sysout que eu fiz.

Como podem ver, a JTable não esta sendo atualizada em tempo real. Desde já agradeço a força.

Qual é o método que atualiza e dispara o fire event correspondente da JTable?

Não usei FireEvent. Na verdade eu nem sabia da existência dele. Como que funciona?

A JTable é uma estrutura fixa, digamos, imutável. O que torna ela dinâmica são os tablemodels. Eu não sei se você está usando DefaultTableModel um um table model customizado. Considerando que seja um customizado, a partir do momento que você insere ou exclui ou troca dados do table model, deve invocar a “queima” da tabela, indicando que precisa atualizar o que é mostrado.
Exemplo:

```
public void add(Employee item) {
        items.add(item);
        int row = items.indexOf(item);
        fireTableRowsInserted(row, row); //Áqui você atualiza a JTable
    }
```

Cada ação possui um evento específico para atualizar a tabela, mas, o fireTableDataChanged() deve resolver o problema. Só não me recordo se ele recebe parâmetros

1 curtida

Boa. Vou estudar este FireEvento. Muito obrigado.

Esqueci de dizer estou usando AbstractTableModel. Segue código.

package br.com.BackEnd;

import java.util.ArrayList;
import java.util.List;
import javax.swing.table.AbstractTableModel;

public class ClasseJTable extends AbstractTableModel {

private static final long serialVersionUID = -2907913129227694965L;

private List<ClasseIncluirCliente> clientes = new ArrayList<ClasseIncluirCliente>();


private static final int CODIGO = 0;
private static final int NOMEEMPRESA = 1;
private static final int ANYDESK = 2;
private static final int TEAMVIEWER = 3;
private static final int TELEFONE = 4;
private static final int CELULAR = 5;

public ClasseJTable(List<ClasseIncluirCliente> clientes) {
	this.clientes = clientes;
}


@Override
public int getColumnCount() {

	return 6;
}


@Override
public int getRowCount() {

	return clientes.size();
}


@Override
public Object getValueAt(int rowIndex, int columnIndex) {

	ClasseIncluirCliente cliente = this.clientes.get(rowIndex);

	
	if(columnIndex == CODIGO)
		return cliente.getCodigo();
	if (columnIndex == NOMEEMPRESA)
		return cliente.getNomeEmpresa();
	if (columnIndex == ANYDESK)
		return cliente.getAnyDesk();
	if (columnIndex == TEAMVIEWER)
		return cliente.getTeamViewer();
	if (columnIndex == TELEFONE)
		return cliente.getTelefone();
	if (columnIndex == CELULAR)
		return cliente.getCelular();
	return "";
}

@Override
public String getColumnName(int column) {

	if(column == CODIGO) {
		return "Código";
	}
	
	if(column == NOMEEMPRESA) {
		return "Empresa";
	}
	if(column == ANYDESK) {
		return "AnyDesk";
	}
	if(column == TEAMVIEWER) {
		return "TeamViewer";
		
	}	
	if(column == TELEFONE) {
		return "Telefone";
		
	}	
	if(column == CELULAR) {
		return "Celular";
		
	}
	return null;
}

}

Mas onde ocorre a atualização?

Aqui. Neste método. Toda vez que alguém inclui um cliente este é adicionando na JTable e também no banco.

public void ExecutarBotoes() {

	jbIncluir.addActionListener(new ActionListener() {

		ClasseIncluirCliente cliente = new ClasseIncluirCliente();
		PersisitirDadosBanco persisti = new PersisitirDadosBanco();

		@Override
		public void actionPerformed(ActionEvent e) {

			if (jtfNomeEmpresa.getText().isEmpty() || jtfAnyDesk.getText().isEmpty()) {

				JOptionPane.showMessageDialog(null,
						"Ops,você não inseriru dados da Empresa e do AnyDesk! \nPor favor Verifique!", "Aviso",
						JOptionPane.WARNING_MESSAGE);

			} else {

				cliente.setNomeEmpresa(jtfNomeEmpresa.getText());
				cliente.setAnyDesk(jtfAnyDesk.getText());
				cliente.setTeamViewer(jtfTeamViewer.getText());
				cliente.setTelefone(jtfTelefone.getText());
				cliente.setCelular(jtfCelular.getText());
				cliente.setObservacao(jtfObservacao.getText());

				jtfNomeEmpresa.setText("");
				jtfAnyDesk.setText("");
				jtfTeamViewer.setText("");
				jtfTelefone.setText("");
				jtfCelular.setText("");
				jtfObservacao.setText("");

				persisti.IncluirDB(cliente);

				List<ClasseIncluirCliente> buscarTable = PersisitirDadosBanco.ConsultaDB("");

				ClasseJTable modelo = new ClasseJTable(buscarTable);
				table.setModel(modelo);

			}
		}
	});

A ClasseIncluirCliente é onde tem meus Getters e Setters. A Classe PersisitirDadosBanco é onde tem meus métodos para fazer inclusão no banco de dados (inserção, alteração e deleção). Mais abaixo chamei meu objeto instanciado da classe onde tem os dados do meu banco onde tem o método de Inclusão das informações passando por parâmetro a classe onde tem meus getters e setters. Ou seja, persisti.IncluirDB(cliente);

Para atualizar a tabela, fiz o List buscarTable = PersisitirDadosBanco.ConsultaDB("");

Mais abaixo chamei minha ClasseJTable que é onde tem tudo para criar as tabelas.

E por fim dei um table.setModel(modelo); onde estou chamando o método da minha JTable.

Segue Classe de Persistência no banco.
package br.com.BackEnd;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JOptionPane;

public class PersisitirDadosBanco {

ConexaoDB conectar = new ConexaoDB();

public void IncluirDB(ClasseIncluirCliente inserirDB) {

	Connection inserir = ConexaoDB.conectar();
	PreparedStatement inserirSQL = null;

	try {

		inserirSQL = inserir.prepareStatement(
				"insert into pchelp (nome_empresa, anydesk, teamviewer, telefone, celular, observacao) values (?,?,?,?,?,?)");

		inserirSQL.setString(1, inserirDB.getNomeEmpresa());
		inserirSQL.setString(2, inserirDB.getAnyDesk());
		inserirSQL.setString(3, inserirDB.getTeamViewer());
		inserirSQL.setString(4, inserirDB.getTelefone());
		inserirSQL.setString(5, inserirDB.getCelular());
		inserirSQL.setString(6, inserirDB.getObservacao());
		inserirSQL.executeUpdate();
		inserirSQL.close();

		JOptionPane.showMessageDialog(null, "Dados Inseridos", "Informação", JOptionPane.INFORMATION_MESSAGE);

	} catch (SQLException e) {
		JOptionPane.showMessageDialog(null, "Dados não inseridos", "Erro", JOptionPane.ERROR_MESSAGE);

		e.printStackTrace();
	}

}

public static ClasseIncluirCliente SelecionarID(Integer selecionaID) {

	ClasseIncluirCliente selecionado = new ClasseIncluirCliente();

	Connection selecaoID = ConexaoDB.conectar();
	PreparedStatement selecionarSQL = null;

	try {

		selecionarSQL = selecaoID.prepareStatement("select * from pchelp where id = ?");

		selecionarSQL.setInt(1, selecionaID);

		ResultSet selecaoRS = selecionarSQL.executeQuery();

		while (selecaoRS.next()) {

			selecionado.setCodigo(selecaoRS.getString("id"));
			selecionado.setNomeEmpresa(selecaoRS.getString("nome_empresa"));
			selecionado.setAnyDesk(selecaoRS.getString("anydesk"));
			selecionado.setTeamViewer(selecaoRS.getString("teamviewer"));
			selecionado.setTelefone(selecaoRS.getString("telefone"));
			selecionado.setCelular(selecaoRS.getString("celular"));
			selecionado.setObservacao(selecaoRS.getString("observacao"));
		}

	} catch (SQLException e) {
		e.printStackTrace();
	}
	return selecionado;
}

public void SalvarDB(ClasseIncluirCliente salvarDB) {

	Connection salvar = ConexaoDB.conectar();
	PreparedStatement salvarSQL = null;

	try {
		salvarSQL = salvar.prepareStatement(
				"update pchelp set nome_empresa = ?, anydesk = ?, teamviewer = ?, telefone = ?, celular = ?, observacao = ? where id =?");


		salvarSQL.setString(1, salvarDB.getNomeEmpresa());
		salvarSQL.setString(2, salvarDB.getAnyDesk());
		salvarSQL.setString(3, salvarDB.getTeamViewer());
		salvarSQL.setString(4, salvarDB.getTelefone());
		salvarSQL.setString(5, salvarDB.getCelular());
		salvarSQL.setString(6, salvarDB.getObservacao());
		salvarSQL.setInt(7, Integer.parseInt(salvarDB.getCodigo()));
		
		salvarSQL.executeUpdate();
		salvarSQL.close();

	} catch (SQLException e) {

		e.printStackTrace();
	}

}

public static List<ClasseIncluirCliente> ConsultaDB(String consulta) {

	Connection buscar = ConexaoDB.conectar();
	PreparedStatement consultaSQL = null;

	List<ClasseIncluirCliente> clientes = new ArrayList<>();

	try {
		consultaSQL = buscar.prepareStatement("select * from pchelp order by id desc");

		ResultSet rs = consultaSQL.executeQuery();

		while (rs.next()) {

			ClasseIncluirCliente buscarDados = new ClasseIncluirCliente();

			buscarDados.setCodigo(rs.getString("id"));
			buscarDados.setNomeEmpresa(rs.getString("nome_empresa"));
			buscarDados.setAnyDesk(rs.getString("anydesk"));
			buscarDados.setTeamViewer(rs.getString("teamviewer"));
			buscarDados.setTelefone(rs.getString("telefone"));
			buscarDados.setCelular(rs.getString("celular"));
			buscarDados.setObservacao(rs.getString("observacao"));
			clientes.add(buscarDados);

		}

	} catch (SQLException e) {
		e.printStackTrace();
	}
	return clientes;

}

public void ExcluirDB(ClasseIncluirCliente deletar) {

	Connection excluir = ConexaoDB.conectar();
	PreparedStatement excluirSQL = null;

	try {
		excluirSQL = excluir.prepareStatement("delete from pchelp where id = ?");

		excluirSQL.setInt(1, Integer.parseInt(deletar.getCodigo()));
		excluirSQL.executeUpdate();
		excluirSQL.close();

	} catch (SQLException e) {

		e.printStackTrace();
	}
}

}

Mas você não tem que criar um modelo novo quando altera. Você deve, no caso, criar um método no teu table model que recebe os itens a serem exibidos e atualizar a tabela.

Hum… assim como você disse ali em cima certo?

public void add(Employee item) {
items.add(item);
int row = items.indexOf(item);
fireTableRowsInserted(row, row); //Áqui você atualiza a JTable
}

OK. Vou dar uma olhada.

Sim, neste caso, ele adiciona um elemento apenas. Nada impede de você passar uma lista inteira.

Consegui aqui cara. Mas não fiz da forma como você me mostrou. Eu só tive que chamar o parâmetro do meu list.

jtfPesquisa.addKeyListener(new KeyListener() {

		@Override
		public void keyTyped(KeyEvent e) {

			List<ClasseIncluirCliente> buscarDados = new ArrayList<>();

			String consulta = jtfPesquisa.getText();

			for (ClasseIncluirCliente cliente : buscar) {

				if (cliente.getCodigo().contains(consulta) || cliente.getNomeEmpresa().contains(consulta)
						|| cliente.getAnyDesk().contains(consulta) || cliente.getTeamViewer().contains(consulta)
						|| cliente.getTelefone().contains(consulta) || cliente.getCelular().contains(consulta)) {

					buscarDados.add(cliente);

				//	System.out.println(consulta);

				}

			}

			ClasseJTable atualiza = new ClasseJTable(buscarDados);
			table.setModel(atualiza);

		}

Mesmo assim. Muito grato pela ajuda. Valeu mesmo.