Aí gente fiz um TableModel, mas queria dar uma conferida se ta tudo ok, e não está faltando nada para continuar programando, vlw a força e segue o código
public class PessoasTableModel extends AbstractTableModel {
public static final String[] COLUNAS = {"Nome","Endereço","CPF/CNPJ","Data","E-mail","Telefones"};
private List<Pessoa> pessoas;
public PessoasTableModel(List<Pessoa> pessoas) {
this.pessoas = pessoas;
}
public void addRow(Pessoa p){
pessoas.add(p);
fireTableRowsInserted(pessoas.size()-1, pessoas.size()-1);
}
public void removeRow(Pessoa p){
fireTableRowsDeleted(pessoas.indexOf(p), pessoas.indexOf(p));
pessoas.remove(p);
}
public int getRowCount() {
return pessoas.size();
}
public int getColumnCount() {
return COLUNAS.length;
}
public Object getValueAt(int rowIndex, int columnIndex) {
Pessoa p = pessoas.get(rowIndex);
switch(columnIndex){
case 1: return p.getNome();
case 2: return p.getEndereco();
case 3: return p.getDocumento();
case 4: return p.getData();
case 5: return p.getEmail();
case 6: return p.getTelefones();
default: return "ERRO OPÇÃO NÃO ENCONTRADA";
}
}
@Override
public Class<?> getColumnClass(int columnIndex){
return String.class;
}
@Override
public boolean isCellEditable(int rowIndex, int columnIndex){
return false;
}
@Override
public String getColumnName(int column){
return COLUNAS[column];
}
}