LocalDate date = LocalDate.parse("2019-08-01", DateTimeFormatter.ofPattern("yyyy-MM-dd"));
LocalDate first = date.with(TemporalAdjusters.firstDayOfMonth());
LocalDate last = date.with(TemporalAdjusters.lastDayOfMonth());
long days = first.until(last, ChronoUnit.DAYS);
System.out.println(days);
System.out.println(first.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
System.out.println(last.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));