Não estou conseguindo cadastrar data no banco mysql

3 respostas
java
J

Olá, estou a algum tempo tentando cadastrar uma data no banco usando java, mas não da certo. Aparece esse erro quando clico em salvar:

GRAVE: null

java.text.ParseException: Unparseable date: 21/10/2015

at java.text.DateFormat.parse(DateFormat.java:366)

at my.contacteditor.CadastroViagens.btnSalvarActionPerformed(CadastroViagens.java:233)

Aqui está o trecho da action button salvar:

private void btnSalvarActionPerformed(java.awt.event.ActionEvent evt) {

ViagensDAO ViagensDAO = new ViagensDAO();

Viagens viagens = new Viagens();

viagens.setMotorista(cbMotorista.getSelectedItem().toString());

viagens.setVeiculo(cbVeiculo.getSelectedItem().toString());

viagens.setDestino(jbDestino.getSelectedItem().toString());

SimpleDateFormat formatoData = new SimpleDateFormat(yyyy-MM-dd);

try {

viagens.setData((java.sql.Date) formatoData.parse(txtDataViagem.getText()));

} catch (ParseException ex) {

Logger.getLogger(CadastroViagens.class.getName()).log(Level.SEVERE, null, ex);

}

ViagensDAO.save(viagens);

}
private void jbDestinoActionPerformed(java.awt.event.ActionEvent evt) {                                          
    // TODO add your handling code here:
}

Eu vi que devo converter a String do JtextField em formato date, depois converter de java util date para Mysql, porém não da certo. Eu coloquei máscara no campo da data, será que isso influencia no erro?

3 Respostas

mariodevjunior

Essa data está vindo de uma componente ou está passando ela manual mesmo(digitando)?

O pattern que está passando no SimpleDateFormat(“yyyy-MM-dd”) é o mesmo(formato) que está vindo ao passar a data?

Se for dessa forma: (“dd/MM/yyyy”) creio que possa resolver

J

Sim, a data é digitada pelo usuário, eu fiz o que pediu mas agora o erro é o seguinte:

Exception in thread “AWT-EventQueue-0” java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Date

mariodevjunior

retira esse cast: (java.sql.date)

Criado 13 de novembro de 2019
Ultima resposta 13 de nov. de 2019
Respostas 3
Participantes 2