[RESOLVIDO]Iniciar Jtable com Dados oriundos da Base

Pessoal queria ajuda no seguinte.
Sei que não é muito indicado usar a DefaultTableModel mas estou aprendendo e quero pegar desde essa parte até que eu entenda e consiga implementar as interfaces ou classes abstratas.
O que está acontecendo é o seguinte, estou fazendo umas busca no banco e pululando um vetor, depois quero varrer esse vetor e jogar pra minha tabela. Porém só consigo visualizar esses dados se antes eu iniciar a jtable com dados quaisquer nas linhas, não sei como inicia-la já com os dados vindos da base.

private void carregarTabela() {
		
		String sql = "select * from pessoa";
		c = DBConnection.getConnection();
		
		Vector<Vector> vetor = new Vector<>();
		
		try {
		
			ps = c.prepareStatement(sql);
			rs = ps.executeQuery();
			
			while (rs.next()) {
			
				Vector<Object> linha = new Vector<>();
				linha.add(rs.getInt("id"));
				linha.add(rs.getString("nome"));
				vetor.add(linha);
			}
			
			String[] col = {"ID","NOME"};
			String [][] row = {
					null, null
			};
			
			DefaultTableModel d = new DefaultTableModel(row,col);
			tabela.setModel(d);
			DefaultTableModel dtm = (DefaultTableModel) tabela.getModel();
			
			for (int i = 0; i < vetor.size(); i++) {
				
				dtm.addRow(vetor.get(i));
			}
			
			
			scroll.setViewportView(tabela);
			this.add(scroll);
			
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}

Se eu comentar essa parte

não aparece nada. Fico pensando o seguinte, li que quando agente não define nada no construtor de uma jtable ele por default cria um DefaultTableModel padrão, então era pra ja funcionar o getModel.

Agradeço a ajuda.

Consegui… mas pena que tive que “colar” do NetBeans

tabela.setModel(new DefaultTableModel(new Object[][]{}, new String[]{"ID","NOME"}));

O bom é que com isso eu também consegui resolver o problema de não estar aparecendo o Títulos pra as 2 colunas (ID e NOME).