Duvida sobre Jtable

Peguei esse exemplo no prorprio :

2.	DefaultTableModel dtm = (DefaultTableModel) suaJTable.getModel();   
3.	dtm.addRow(new Object[]{"","","","",""}); // no lugar das aspas vc coloca seus Jtextfields (textfield1.getText(), textField2.getText().... ) e assim por diante.  

No meu caso é o seguinte… para inserir o texfield na tabela eu preciso fazer uma consulta… se cada vez que eu fizer uma consulta no banco e for inserir na table… o valor antigo que jouei na table vai continuar?
como da pra colocar o novo textfield na table sem sobreescrever o antigo?

e dps que inserir na table…

como faço para inserir os dados no banco? da propria table

de inicio coloca seus dados em uma arrayList e depois passa para a JTable,
Feito isso quando incluirá no banco voce esquece oque tem na jTable e pega os dados do Array!
eu faço assim sempre!

vc pode me mostrar um exemplo de inserir o array na table?

Cara… estou fazendo um exemplo parecido…

da uma olhada…

private void buscarTabela(){		
		Connection conn = conexao.conectar();
		String sql = "select idcliente, nome, cpf, sexo, datanasc from cliente";
		try{
			Vector cabecalho = new Vector();
			Vector linhas = new Vector();
			st = conn.createStatement();
			res = st.executeQuery(sql);
			res.next();
			ResultSetMetaData rsmd = res.getMetaData();
			for(int i = 1; i <= rsmd.getColumnCount(); i++){
				cabecalho.addElement(rsmd.getColumnName(i));
			}
			do{
				linhas.addElement(proximaLinha(res, rsmd));
			}
			while(res.next());
				JTable tab = new JTable(linhas, cabecalho);
				JScrollPane scroller = new JScrollPane(tab);
				getContentPane().add(scroller, BorderLayout.CENTER);
				validate();
				st.close();
		}catch(SQLException erro){
			erro.printStackTrace();
		}
	}

	private Vector proximaLinha(ResultSet rs, ResultSetMetaData rsmd){
		Vector linhaAtual = new Vector();
		try{
			for(int i = 1; i <= rsmd.getColumnCount(); i++){
				switch(rsmd.getColumnType(i)){
				case Types.INTEGER:
					linhaAtual.addElement(rs.getInt(i));
				case Types.VARCHAR:
					linhaAtual.addElement(rs.getString(i));
					break;
				case Types.DATE:
					linhaAtual.addElement(rs.getDate(i));
					break;
				}
			}			
		}catch(SQLException e){
			e.printStackTrace();
		}
		return linhaAtual;
	}

Não fiz com arrayList… mas o Vector é parecido…

abraço