Pessoal Boa tarde!
por favor, poderiam me auxiliar no caso abaixo. Tenho um JdateChooser e quero salvar o valor selecionado em um objeto, mas no momento de salvar em vendaAgendada.setDataEntrega(dcDataentrega) ele apresenta erro de tipo de dados.
Segue metodo do DAO
public void inserir(VendaAgendada vendaAgendada){
Connection con = null;
PreparedStatement ps = null;
try{
//Estabelece a conexão
con = ConnectionFactory.getConnection();
//A função max() retorna o maior valor da Coluna especifica
// Nesse caso o ultimo código da tabela Produto
Statement stmt = con.createStatement();
String sqlCodigo = "select max(codigo) from consultaVendaAgendada";
ResultSet rs = stmt.executeQuery(sqlCodigo);
rs.next();
//Obtendo o código do novo Produto
int proximoCodigo = rs.getInt(1) + 1;
rs.close();
//A classe PreparedStatement permite a inserção de parametros (?) na construção da String de Sql
String sql = "insert into consultaVendaAgendada values (?, ?, ?,?);";
// A definição dos valores que serão inseridos nos parâmetros da string de SQL
// são indicados pelo metodo set de um objeto prepareStatement
// passando o indice (a ordem/sequencia) e o valor por parâmetro.
// Cria um objeto prepareStatement
ps = con.prepareStatement(sql);
//stmt.setDate(2, new java.sql.Date(contatosDTO.getData().getTime()));
//Define os valores dos parametros
ps.setInt(1, proximoCodigo);
ps.setDate(2,new java.sql.Date( vendaAgendada.getDataPedido().getDayOfYear()));
ps.setDate(3,new java.sql.Date( vendaAgendada.getDataEntrega().getDayOfYear()));
ps.setString(4, vendaAgendada.getStatusPedido());
//Executa a String SQL
ps.executeUpdate();
ps.close();
}catch(SQLException e){
e.printStackTrace();
JOptionPane.showMessageDialog(null, "Erro ao inserir a Consulta da Venda Expressa!", "Erro de inserção", JOptionPane.ERROR_MESSAGE);
} finally{
try{
con.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
Tela de JDVendaAgendada
JButton btnTeste = new JButton("Teste");
btnTeste.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
//JOptionPane.showMessageDialog(null, dcRegistroVenda);
//Cria um formatador simple do tipo dia mês e ano
SimpleDateFormat formatadorData = new SimpleDateFormat("dd/MM/yyyy");
//Obtem a data a partir de um objeto VendaAgendada como Date( A Classe simpledateformate espera um date)
String data = formatadorData.format(vendaAgendada.getDataPedido().toDate());
//Cria um formatador SimpleDtaeFormat no padrão por extenso
SimpleDateFormat formatadorDataExtenso = new SimpleDateFormat("EEEE, dd 'de' MMMM 'de' yyyy");
//btem a data a partir de um objeto VendaAgenda como Date(A classe simpleDate Format espera um Date)
String dataExtenso = formatadorDataExtenso.format(vendaAgendada.getDataPedido().toDate());
JOptionPane.showMessageDialog(null, data+"\n ou \n " + dataExtenso );
vendaAgendada.setStatusPedido("Pendente");
vendaAgendada.setDataEntrega((dcDataentrega)); //Nome do JdateChooser
vendaDAO.inserir(vendaAgendada);
}
});