DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDateTime localDateTime = LocalDateTime.parse("2020-07-06 12:12:12", dateTimeFormatter);
LocalDate localDate = LocalDate.parse("2020-07-06", dateFormatter);
System.out.println("String to localDateTime: " + localDateTime);
System.out.println("String to localDate: " + localDate);
LocalDate localDate1 = localDateTime.toLocalDate();
LocalDateTime localDateTime1 = LocalDateTime.of(localDate, LocalTime.parse("00:00:00"));
System.out.println("LocalDateTime to localDate: " + localDate1);
System.out.println("LocalDate to localDateTime: " + localDateTime1);
long localDateTimeMilli = localDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
long localDateMilli = localDate.atStartOfDay(ZoneId.systemDefault()).toInstant().toEpochMilli();
System.out.println("LocalDateTime to Milli: " + localDateTimeMilli);
System.out.println("LocalDate to Milli: " + localDateMilli);
String localDateTimeString = localDateTime.format(dateTimeFormatter);
String localDateString = localDate.format(dateFormatter);
System.out.println("LocalDateTime to String: " + localDateTimeString);
System.out.println("LocalDate to String: " + localDateString);
Date localDateTimeDate = Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant());
Date localDateDate = Date.from(localDate.atStartOfDay().atZone(ZoneId.systemDefault()).toInstant());
System.out.println("LocalDateTime to Date: " + localDateTimeDate);
System.out.println("LocalDate to Date: " + localDateDate);
Date date = new Date();
LocalDateTime dateLocalDateTime = LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault());
LocalDate dateLocalDate = LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault()).toLocalDate();
System.out.println("Date to LocalDateTime: " + dateLocalDateTime);
System.out.println("Date to LocalDate: " + dateLocalDate);
long timestamp = System.currentTimeMillis();
LocalDateTime timestampLocalDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(timestamp), ZoneId.systemDefault());
LocalDate timestampLocalDate = LocalDateTime.ofInstant(Instant.ofEpochMilli(timestamp), ZoneId.systemDefault()).toLocalDate();
System.out.println("timestamp to LocalDateTime: " + timestampLocalDateTime);
System.out.println("timestamp to LocalDate: " + timestampLocalDate);