0
Good afternoon, I am doing a project for project management and I have in the registration form, two dates fields, when entering, when I consult the bank, the dates appear with the wrong month, all indicate the month 1.
This is the code of the save button:
try(Connection conn = Conexao.getConnection()){
dados.setTipoProj(jCheckBox5.isSelected());
dados.setModelagem2d(jCheckBox1.isSelected());
dados.setModelagem3d(jCheckBox2.isSelected());
dados.setValor(Float.parseFloat(jTextField4.getText()));
SimpleDateFormat ent1 = new SimpleDateFormat("dd/mm/yyyy");
SimpleDateFormat ent = new SimpleDateFormat("dd/mm/yyyy"); // pegando o tipo de data
String date1 = jFormattedTextField1.getText(); // pegando a data inserida
java.util.Date d1 = ent.parse(date1); // traduzindo a data de String para o tipo Date
dados.setDataEntrega(d1);
String date2 = jFormattedTextField4.getText();
java.util.Date d2 = ent1.parse(date2);
dados.setDataPagamento(d2);
dados.setDetalhePag(jTextArea2.getText());
dados.setSoftAUTOCAD(jCheckBox3.isSelected());
dados.setSoftSOLID(jCheckBox4.isSelected());
dados.setNomeResp(jTextField1.getText());
dados.setNomeEmp(jTextField2.getText());
String contato = jFormattedTextField2.getText();
dados.setContato(Double.parseDouble(contato));
dados.setEmail(jTextField5.getText());
dados.setDetalheProj(jTextArea2.getText());
dados.setNomeProjeto(jTextField3.getText());
dados.setTipoProj1(jCheckBox6.isSelected());
String sql = "INSERT INTO projeto (tipoProj, modelagem2d, "
+ " modelagem3d, valor, dataEntrega, dataPagamento, detalhePag, softAUTOCAD,"
+ " softSOLID, nomeResp, nomeEmp, contato, email, detalhesProj, nomeProjeto, tipoProj1) VALUES"
+ " (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
PreparedStatement stmt = conn.prepareStatement(sql);
stmt.setBoolean(1, dados.getTipoProj());
stmt.setBoolean(2, dados.getModelagem2d());
stmt.setBoolean(3, dados.getModelagem3d());
stmt.setFloat(4, dados.getValor());
stmt.setDate(5, new Date(dados.getDataEntrega().getTime()));
stmt.setDate(6, new Date(dados.getDataPagamento().getTime()));
stmt.setString(7, dados.getDetalhePag());
stmt.setBoolean(8, dados.getSoftAUTOCAD());
stmt.setBoolean(9, dados.getSoftSOLID());
stmt.setString(10, dados.getNomeResp());
stmt.setString(11, dados.getNomeEmp());
stmt.setDouble(12, dados.getContato());
stmt.setString(13, dados.getEmail());
stmt.setString(14, dados.getDetalheProj());
stmt.setString(15, dados.getNomeProjeto());
stmt.setBoolean(16, dados.getTipoProj1());
stmt.executeUpdate();
conn.close();
stmt.close();
}
catch(SQLException e){
System.out.println("ERRO " + e);
}
catch (ParseException ex) {
Logger.getLogger(Cadastro.class.getName()).log(Level.SEVERE, null, ex);
}
and this is the result of the search in the comic
dados.getDataEntrega().getTime()
returns what type of data?– mari
returns type DATE
– baleralarissa
Why you are instantiating a Date and the given object is receiving a Date in the "setDataPag" method. It doesn’t work if you give a "getDataPag" only?
– Rafael Gomes Francisco
If you remove the Date instance, it appears that.getDataPackage(). getTime(); cannot be converted from long to date
– baleralarissa