Timestamp erro

seguinte tenho minha classe no bamco uma coluna data_venda TIMESTAMP

  public  void inserir(Venda ven) {
        String sql = "INSERT INTO venda (id_cliente, nome_cliente , data_venda) VALUES (?,?,?)";
        try {
            PreparedStatement stmt = getConexao().prepareStatement(sql);
         
            stmt.setInt(1, ven.getid_cliente());
              stmt.setString(2, ven.getnome_cliente() );
  stmt.setTimestamp(3,(Timestamp) ven.getdata_venda().getTimestamp() );

              
           // stmt.setDate(3, new java.sql.Date(ven.getdata_venda().getTime()));  aqui inseri somente a data
   
            stmt.executeUpdate();
        } catch (SQLException sQLException) {
            System.out.println("Erro ao cadastrar venda." + sQLException.getMessage());
        }
        
    }

essa linha aqui  stmt.setTimestamp(3,(Timestamp) ven.getdata_venda().getTimestamp() );
nao sei se ta certo

e no botao salvar 
  ven.setdata_venda(java.sql.Timestamp.valueOf(jtfdata_venda.getText() ) );
essa linha ai da erro como eu salvo uma data e hora no banco com data eu salvei mas o resultado é pra hora 00:00:00 quero colocar a data e a hora junto

fiz assim 
          ven.setdata_venda(SimpleDateFormat.getDateInstance().parse(jtfdata_venda.getText()));
caddastrei como data somente

e o resultado no mysql
2008-12-21 00:00:00

data tudo certo mas a HORA como fazer pra cadastrar a hora junto com a data
RESOLVIDO   
inseri no banco

  public  void inserir(Venda ven) {
        String sql = "INSERT INTO venda (id_cliente, nome_cliente , data_venda) VALUES (?,?,?)";
        try {
            PreparedStatement stmt = getConexao().prepareStatement(sql);
         
            stmt.setInt(1, ven.getid_cliente());
              stmt.setString(2, ven.getnome_cliente() );
            stmt.setTimestamp(3, new java.sql.Timestamp(ven.getdata_venda().getTime()));
            stmt.executeUpdate();
        } catch (SQLException sQLException) {
            System.out.println("Erro ao cadastrar venda." + sQLException.getMessage());
        }
        
    }
private Date data_venda;

os get e setter tem que ser do tipo DATE ai que eu me perdia tipo DATE

e pra cadastrar no banco

SimpleDateFormat sdf=new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");   
Date date=sdf.parse(jtfdata_venda.getText()+ " "+ jtfhora_venda.getText()); 
Timestamp data = new Timestamp(date.getTime()); 

  ven.setdata_venda(data);

esse codigo coloco no campo texto a data e a hora

 String data = "dd/MM/yyyy";   
String hora = "hh:mm:ss";   
String data1, hora1;   
  
java.util.Date agora = new java.util.Date();;   
SimpleDateFormat formata = new SimpleDateFormat(data);   
data1 = formata.format(agora);   
formata = new SimpleDateFormat(hora);   
hora1 = formata.format(agora);   
 
         
   jtfhora_venda.setText(hora1);
   jtfdata_venda.setText(data1);