Como passar data digitada em um Jcalendar do componente(JDatechoser) para o banco como Date?

0 respostas
programaçãojavamysql
J

Pessoal boa tarde!

Tenho um Jcalendar com nome de dcDataEntrega e gostaria de salvar no banco como Date.
Criei um obejto e quero passar da seguinte maneira:

umConsultaAgendada.setDataEntrega(dcDataEntrega.getDate());

No momento de salvar no banco estou utilizando:

public class ConsultaVendaAgendadaDAO {
	
	
	//Método responsavel pela inserção de um administrativo
			public void inserir(ConsultaVendaAgendada consultaVendaAgendada){
				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);
								
								
								
								Date data = new Date();
								//java.sql.Date dataDB = new java.sql.Date(data.getTime());
								
								//Define os valores dos parametros
								ps.setInt(1, proximoCodigo);
								ps.setString(2, consultaVendaAgendada.getItemVendido());
								ps.setInt(3, consultaVendaAgendada.getQuantidade());
								ps.setDouble(4, consultaVendaAgendada.getValorTotal());
								ps.setDate(5,new java.sql.Date(data.getTime()));
								ps.setDate(6,new java.sql.Date(consultaVendaAgendada.getDataEntrega())); //Não estou conseguindo fazer a conversão neste campo do jDateChoose do tipo Jcalendar
								ps.setInt(7, consultaVendaAgendada.getCodigo());
								ps.setString(8, consultaVendaAgendada.getNome());
								ps.setString(9, consultaVendaAgendada.getRua());
								ps.setString(10, consultaVendaAgendada.getNumero());
								ps.setString(11, consultaVendaAgendada.getBairro());
								ps.setString(12, consultaVendaAgendada.getCidade());
								ps.setString(13, consultaVendaAgendada.getEstado());
								ps.setString(14, consultaVendaAgendada.getCep());
								ps.setString(15, "Pendente");
								
								
								
								//Executa a String SQL
								ps.executeUpdate();
								ps.close();
				}catch(SQLException e){
					e.printStackTrace();
					JOptionPane.showMessageDialog(null, "Erro ao inserir o produto!", "Erro de inserção", JOptionPane.ERROR_MESSAGE);	
					
				} finally{			
					try{				
						con.close();				
					}catch(Exception e){
						e.printStackTrace();
					}			
				}
			}

Desde já Agradeço.

Criado 4 de novembro de 2016
Respostas 0
Participantes 1