Estou montando um projetinho para ajudar o meu pai a um tempo e resolvi faze-lo em java, ainda falta muita coisa. Estou com uma dificuldade com a entrada da data esta aparecendo como null no mysql no campo quando faço uma consulta. Eu vou deixar aqui o código caso vocês consigam me ajudar.
Este é o Model
package Model;
import java.sql.Date;
/**
*
-
<a class="mention" href="/u/jhonnatan">@Jhonnatan</a> */ public class Viagens { int id; String destino; Date data; String motorista; String veiculo;
public Viagens() {
}public Viagens(String destino, Date data, String motorista, String veiculo) { this.destino = destino; this.data = data; this.motorista = motorista; this.veiculo = veiculo; }
public int getId() { return id; }
public void setId(int id) { this.id = id; }
public String getDestino() { return destino; }
public void setDestino(String destino) { this.destino = destino; }
public Date getData() { return data; }
public void setData(Date data) { this.data = data; }
public String getMotorista() { return motorista; }
public void setMotorista(String motorista) { this.motorista = motorista; }
public String getVeiculo() { return veiculo; }
public void setVeiculo(String veiculo) { this.veiculo = veiculo; } }
Viagens DAO
/*
- To change this license header, choose License Headers in Project Properties.
- To change this template file, choose Tools | Templates
- and open the template in the editor.
*/
package DAO;
import Conexao.ConnectionFactory;
import Model.Viagens;
import Model.Motorista;
import Model.Veiculos;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
/**
*
-
@Jhonnatan
*/
public class ViagensDAO {private Connection con = null;
public ViagensDAO() {
con = ConnectionFactory.getConnection();
} public boolean save(Viagens viagens){ String sql = “INSERT INTO viagens (Data, Destino, Motorista, Veiculo) VALUES (?,?,?,?)”; PreparedStatement stmt = null;
try { stmt = con.prepareStatement(sql); stmt.setDate(1,viagens.getData()); stmt.setString(2,viagens.getDestino()); stmt.setString(3,viagens.getMotorista()); stmt.setString(4, viagens.getVeiculo()); stmt.executeUpdate(); } catch (SQLException ex) { System.out.println("Erro"+ex); } finally{ ConnectionFactory.closeConection(con, stmt); } return false;
}
public boolean update(Viagens viagens){ String sql = “UPDATE Viagens SET Data = ?, Destino = ?, Motorista = ?, Veiculo = ? WHERE idViagens = ?”; PreparedStatement stmt = null;
try { stmt = con.prepareStatement(sql); stmt.setInt(1, viagens.getId()); stmt.setDate(2,viagens.getData()); stmt.setString(3,viagens.getDestino()); stmt.setString(4,viagens.getMotorista()); stmt.setString(5, viagens.getVeiculo()); stmt.executeUpdate(); return true; } catch (SQLException ex) { System.out.println("Erro"+ex); return false; } finally{ ConnectionFactory.closeConection(con, stmt); }
}
public boolean delete(Viagens viagens){ String sql = “DELETE FROM viagens WHERE idViagens = ?”; PreparedStatement stmt = null;
try { stmt = con.prepareStatement(sql); stmt.setInt(1, viagens.getId()); stmt.executeUpdate(); return true; } catch (SQLException ex) { System.out.println("Erro"+ex); return false; } finally{ ConnectionFactory.closeConection(con, stmt); }
}
public List findAll(){
String sql = "SELECT * FROM Viagens INNER JOIN Motoristas ON Motoristas.idMotoristas = Viagens.Motorista INNER JOIN Veiculos ON Veiculos.idVeiculos = Viagens.veiculo"; PreparedStatement stmt = null; ResultSet rs = null; List<Viagens> viagenses = new ArrayList<>(); try { stmt = con.prepareStatement(sql); rs = stmt.executeQuery(); while(rs.next()){ Viagens viagens = new Viagens(); viagens.setId(rs.getInt("idViagens")); viagens.setData(rs.getDate("Data")); viagens.setDestino(rs.getString("Destino")); Motorista motorista = new Motorista(); motorista.setNome(rs.getString("Motorista")); Veiculos veiculos = new Veiculos(); veiculos.setId(rs.getInt("Veiculo")); viagenses.add(viagens); } } catch (SQLException ex) { System.out.println("Erro"+ex); }finally{ ConnectionFactory.closeConection(con, stmt, rs); } return viagenses;
}
}
Esse é o action do botão salvar da view “CadastroViagens”
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 format = new SimpleDateFormat(“dd/mm/yyyy”);
try {
Date data = (Date) format.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 acho que estou errando no formato, o formato do campo esta no tipo date em mysql

