问题描述:
在进行查询时,如果用户没有选择查询的开始时间和结束时间,我们想要默认查询前一天的数据,这时,如何获取前一天的日期呢?
直接上代码:
LocalDate localDate = LocalDate.now(); //获取今天的日期
LocalDate yesterday = localDate.plusDays(-1); //前一天日期是今天减1
// LocalDate yesterday = (1); //两种用法均可
// 依次输出年月日
System.out.println(yesterday.getYear()); //年份
System.out.println(yesterday.getMonthValue()); //月份
System.out.println(yesterday.getDayOfMonth()); //日
进阶:
当我们想要限定查询前一天的全部数据,这时可以用 LocalTime
给出昨天的时间的最小值 00:00:00 和最大值 23:59:59。代码如下:
LocalDate localDate = LocalDate.now(); //获取今天的日期
LocalDate yesterday = localDate.plusDays(-1); //前一天日期是今天减1
startTime = LocalDateTime.of(yesterday, LocalTime.MIN);
endTime = LocalDateTime.of(yesterday, LocalTime.MAX);
相关链接:Java使用LocalDate获取某个月的第一天和最后一天日期