Bom dia a todos.
Estou com uma duvida na persistencia de dados em uma lista.
O que ocorre que quando mando persistir os dados que estão na minha lista ele insere duas vezes a mesma coisa.
Alguem sabe o porque disso.
segue os metodos que criei.
o metodo que utilizo para persistir a minha lista é o consolida viewPerf
private void populaArquivo(ViewPerf viewPerf, ResultSet rs) throws SQLException {
viewPerf.setCobradorPadrao(rs.getString("cobradorPadrao"));
viewPerf.setNomeCobradorPadrao(rs.getString("nomeCobradorPadrao"));
viewPerf.setDataAgora(rs.getString("dataAgora"));
viewPerf.setQtdLoteInicial(rs.getString("qtdLoteInicial"));
viewPerf.setPagamento(rs.getString("pagamento"));
viewPerf.setDevolucao(rs.getString("devolucao"));
viewPerf.setPerdaParaPdd(rs.getString("perdaParaPdd"));
viewPerf.setSaldo(rs.getString("saldo"));
viewPerf.setRecebidos(rs.getString("inclusao"));
viewPerf.setQtdLoteFinal(rs.getString("qtdLoteFinal"));
viewPerf.setVlRecuperado(rs.getString("vlRecuperado"));
viewPerf.setCodigoFinanceira(rs.getString("codigoFinanceira"));
}
public boolean insereViewPerf(ViewPerf viewPerf) throws SQLException, ClassNotFoundException {
PreparedStatement ps = pegaDeclaracaoPreparada("insert into tbl_fin_perf_consolidada values(?,?,?,?,?,?,?,?,?,?,?,?) ");
ps.setString(1, viewPerf.getCobradorPadrao());
ps.setString(2, viewPerf.getNomeCobradorPadrao());
ps.setString(3, viewPerf.getDataAgora());
ps.setString(4, viewPerf.getQtdLoteInicial());
ps.setString(5, viewPerf.getPagamento());
ps.setString(6, viewPerf.getDevolucao());
ps.setString(7, viewPerf.getSaldo());
ps.setString(8, viewPerf.getRecebidos());
ps.setString(9, viewPerf.getQtdLoteFinal());
ps.setString(10, viewPerf.getVlRecuperado());
ps.setString(11, viewPerf.getCodigoFinanceira());
ps.setString(12, viewPerf.getPerdaParaPdd());
ps.execute();
//ps.close();
boolean toReturn = ps.execute();
ps.close();
return toReturn;
}
public List<ViewPerf> consolidaViewPerf() throws SQLException, ClassNotFoundException {
List<ViewPerf> toReturn = new LinkedList<ViewPerf>();
ResultSet rs = pegaDeclaracao().executeQuery("select * from view_perf");
while (rs.next()) {
ViewPerf viewPerf = new ViewPerf();
populaArquivo(viewPerf, rs);
toReturn.add(viewPerf);
insereViewPerf(viewPerf);
}
rs.close();
return toReturn;
}