Problemas com JTable

Olá…
estou com problemas em preencher um JTable com dados de um List<>

fiz isso:


public class TabelaBairro extends AbstractTableModel {
	
	private String[] colunas = {"Código", "Nome"};
	private List<Bairro> dados;
	
	public TabelaBairro(){
		dados = new ArrayList<Bairro>();
	}	
	public TabelaBairro(List<Bairro> lista){
		this();
		this.dados.clear();
		this.dados.addAll(lista);
		super.fireTableDataChanged();
	}	

	public int getColumnCount() {
		
		return colunas.length;
	}

	public int getRowCount() {
		
		return dados.size();
	}

	public Object getValueAt(int rowIndex, int columnIndex) {
				
		Bairro bairro = dados.get(rowIndex);
		
		switch(columnIndex){			
			case 0: return bairro.getCodigo();
			case 1: return bairro.getDescricao();		
		}		
		return null;
	}
		
}

depois:


private void jmiConsBairroActionPerformed(ActionEvent evt) {		
		
		List<Bairro> bairros = new ArrayList<Bairro>();
		
		bairros = acao.listar(Bairro.class);	
				
		TabelaBairro tb = new TabelaBairro(bairros);
		
		jTable1 = new JTable();
		jTable1.setModel(tb);
		jPanel6.add(jTable1);
		jTable1.setBounds(3, 3, 245, 32);
		jTable1.setBorder(new LineBorder(new java.awt.Color(128,128,128), 2, false));
		
		
	}

O retorno da busca retorna todos os bairros que tenho no banco, porém, só é apresentado na tabela que eu criei
os dois primeiros registros no banco, o resto não aparece
e também não é apresentado na tabela o cabeçalho com os nomes das colunas "private String[] colunas = {“Código”, “Nome”};"
Se alguém puder me dizer onde estou errando agradeço

Abraço a todos.