Pessoal criei um método do tipo List que retorna objetos da minha classe Produto, até aí tudo bem ele retorna normal.
Obs.: eu to pegando os valores da tabela produtos do mysql e guardando na lista do tipo Produto e estou listando em uma tabela JTable do swing.
public List listarProduto(){
**Connection** con;
**List**<**Produto**> produtos = new **ArrayList**<>();
**Produto** produto = new **Produto**();
**ResultSet** rs;
**try** {
con = conectar();
**String** sql = "select * from produtos";
**PreparedStatement** pst = con.prepareStatement(sql);
rs = pst.executeQuery();
**while**(rs.next()){
produto.setCodigo(rs.getInt("cod_produto"));
produto.setNome(rs.getString("nome"));
produto.setCategoria(rs.getString("categoria"));
produto.setPeso(rs.getFloat("peso"));
produto.setUnidade(rs.getInt("unidade"));
produto.setValor(rs.getFloat("preco"));
produtos.add(produto);
}
} **catch** (SQLException ex) {
Logger.getLogger(ModuloConexao.class.getName()).log(Level.SEVERE, null, ex);
}
**return** produtos;
}
Só que quando eu percorro a lista parece que ele replica o último objeto da lista.
public void mostrarDados(JTable tblProdutos){
**ModuloConexao** mod = new **ModuloConexao**();
**DefaultTableModel** tabelaMod = (DefaultTableModel) **tblProdutos**.**getModel**();
**for**(Produto produto: mod.listarProduto()){
tabelaMod.addRow(new Object[]{
produto.getCodigo(),
produto.getNome(),
produto.getCategoria(),
produto.getPeso(),
produto.getUnidade(),
produto.getValor()
});
}
}
Já tentei percorrer a lista de várias outras maneiras mas sempre replica.
