// Before Java8 , No thread safe , has to import multiple packages(util, text), throws checked Exception(ParseException)
    System.out.println(oldDate);    //21 Jul 2019
    SimpleDateFormat oldPattern = new SimpleDateFormat("dd MMM yyyy");
    SimpleDateFormat newPattern = new SimpleDateFormat("dd-MM-yyyy");
    try {
        Date date = oldPattern.parse(oldDate);
        String newDate = newPattern.format(date);
        System.out.println(newDate);   //21-07-2019
    } catch (ParseException e) {
        // Exception handling message/mechanism/logging as per company standard
    }
    // In Java8, Thread Safe, Immutable, throws unchecked Exception(DateTimeParseException)
    DateTimeFormatter oldPattern8 = DateTimeFormatter.ofPattern("dd MMM-yyyy");
    DateTimeFormatter newPattern8 = DateTimeFormatter.ofPattern("dd-MM-yyyy");
    LocalDate datetime = LocalDate.parse(oldDate, oldPattern8);
    String output = datetime.format(newPattern8);
    System.out.println(output);  //21-07-2019