Fiz um tableModel personalizado, e testei inserindo os valores manualmente, e funcionou.
Porem ao gerar um arrayList do banco e retornar para montagem da tabela, a mesma permanece vazia.
Poderiam me ajudar a encontrar o erro?
Criação JTable / TelaListarEstoques
EstoqueTableModel tbModel = new EstoqueTableModel();
tblListarEstoques = new JTable(tbModel);
scrlListarEstoques.setViewportView(tblListarEstoques);
EstoqueController estoqueController = new EstoqueController();
tbModel.addListaDeEstoques(estoqueController.listarTodosEstoques());
// estoque.setIdEstoque(001);
// estoque.setDescricaoEstoque("ALMOX 40 CENTRAL");
// tbModel.addEstoque(estoque);
Método para popular tabela / TableModelEstoque
public void addListaDeEstoques(List<Estoque> novosEstoques) {
int tamanhoAntigo = getRowCount();
estoquesDTO.addAll(novosEstoques);
fireTableRowsInserted(tamanhoAntigo, getRowCount() - 1);
}
Método que chama o DAO / EstoqueController
public List<Estoque> listarTodosEstoques() {
List<Estoque> listaDeEstoques = new ArrayList<Estoque>();
EstoqueDAO estoqueDAO = new EstoqueDAO();
try {
listaDeEstoques = estoqueDAO.listarTodos();
} catch (SQLException e) {
e.printStackTrace();
JOptionPane.showMessageDialog(null, e.getMessage());
}
return listaDeEstoques;
}
Método DAO que retorna a lista / EstoqueDAO
public List listarTodos() throws SQLException {
List<Estoque> listaDeEstoques = new ArrayList<Estoque>();
try {
Connection conn = ConexaoBanco.abrirConexao();
String sql = "SELECT * FROM estoque";
PreparedStatement pst = conn.prepareStatement(sql);
ResultSet rs = pst.executeQuery();
while (rs.next()) {
Estoque estoque = new Estoque();
estoque.setIdEstoque(rs.getLong(1));
estoque.setDescricaoEstoque(rs.getString(2));
listaDeEstoques.addAll(listaDeEstoques);
}
pst.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
JOptionPane.showMessageDialog(null, e.getMessage());
}
return listaDeEstoques;
}