基于java8的LocalDateTime,获取时间的一些方法

package com.hisense.subsystem;import com.hisense.common.util.MyDateTimeUtils;import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjuster;
import java.time.temporal.TemporalAdjusters;/*** @author CDM* @version 1.0.0* @create 2020-06-15 9:38*/
public class TimeUtil {public static void main(String[] args) {DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd");//TODO 获取当前时间LocalDate inputDate = LocalDate.now();//TODO 当天开始LocalDateTime today_start = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);//TODO 当天结束LocalDateTime today_end = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);String todayStartTime = today_start.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));String todayEndTime = today_end.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));//TODO 本周开始时间TemporalAdjuster FIRST_OF_WEEK =TemporalAdjusters.ofDateAdjuster(localDate -> localDate.minusDays(localDate.getDayOfWeek().getValue()- DayOfWeek.MONDAY.getValue()));String weekStart = df.format(inputDate.with(FIRST_OF_WEEK));//TODO 本周结束时间TemporalAdjuster LAST_OF_WEEK =TemporalAdjusters.ofDateAdjuster(localDate -> localDate.plusDays(DayOfWeek.SUNDAY.getValue() - localDate.getDayOfWeek().getValue()));String weekEnd = df.format(inputDate.with(LAST_OF_WEEK));//TODO 本月的第一天String  monthStart = df.format(LocalDate.of(inputDate.getYear(),inputDate.getMonth(),1));//TODO 本月的最后一天String monthEnd = df.format(inputDate.with(TemporalAdjusters.lastDayOfMonth()));String format1 = LocalDateTime.of(MyDateTimeUtils.getDayOfWeek(DayOfWeek.MONDAY), LocalTime.MIN).format(MyDateTimeUtils.DATETIME_FORMATTER);String format = LocalDateTime.of(MyDateTimeUtils.getDayOfTime(TemporalAdjusters.firstDayOfMonth()), LocalTime.MIN).format(MyDateTimeUtils.DATETIME_FORMATTER);DayOfWeek monday = DayOfWeek.MONDAY;LocalDate now = LocalDate.now();//System.out.println("now;"+now);LocalDate with = now.with(monday);
//        System.out.println("with:"+with);
//        System.out.println("monday:"+monday);LocalDateTime of = LocalDateTime.of(with, LocalTime.MIN);String format2 = of.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("format2:"+format2);LocalDateTime of1 = LocalDateTime.of(with, LocalTime.MAX);String format3 = of1.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("format3:"+format3);//当天String todayMin = LocalDateTime.of(LocalDate.now(), LocalTime.MIN).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));String todayMax = LocalDateTime.of(LocalDate.now(), LocalTime.MAX).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("todayMin:"+todayMin);System.out.println("todayMax:"+todayMax);//前一天String yestDayMin = LocalDateTime.of(LocalDate.now(), LocalTime.MIN).plusDays(-1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));String yestDayMax = LocalDateTime.of(LocalDate.now(), LocalTime.MAX).plusDays(-1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("yestDayMin:"+yestDayMin);System.out.println("yestDayMax:"+yestDayMax);//当周String weekMin = LocalDateTime.of(LocalDate.now().with(DayOfWeek.MONDAY), LocalTime.MIN).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));String weekMax = LocalDateTime.of(LocalDate.now().with(DayOfWeek.SUNDAY), LocalTime.MAX).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("weekMin:"+weekMin);System.out.println("weekMax:"+weekMax);//当月String monMin = LocalDateTime.of(LocalDate.now().with(TemporalAdjusters.firstDayOfMonth()), LocalTime.MIN).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));String monMax = LocalDateTime.of(LocalDate.now().with(TemporalAdjusters.lastDayOfMonth()), LocalTime.MAX).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("monMin:"+monMin);System.out.println("monMax:"+monMax);//上个月String monMin1 = LocalDateTime.of(LocalDate.now().with(TemporalAdjusters.previous(DayOfWeek.MONDAY)), LocalTime.MIN).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("monMin1:"+monMin1);System.out.println(format);System.out.println(format1);System.out.println("当天开始时间:"+todayStartTime);System.out.println("当天结束时间:"+todayEndTime);System.out.println("前一天开始时间:"+yestDayMin);System.out.println("前一天结束时间:"+yestDayMax);System.out.println("本周开始时间:"+weekStart);System.out.println("本周结束时间:"+weekEnd);System.out.println("本月开始时间:"+monthStart);System.out.println("本月结束时间:"+monthEnd);}
}

当日、昨日、当周、本周、当月、上个月获取方法相关推荐

  1. 数据库 » Oracle 查询当日、当周、当月和当季度的所有记录 Oracle 查询当日、当周、当月和当季度的所有记录...

    Oracle 查询当天.当周.当月和当季度的所有记录 Oracle 字段类型为varchar2,格式要与格式化的样式匹配 当天 select * from 表名 where to_char(to_da ...

  2. SQLServer日期函数及查询当日昨日本周本月本季度本年数据

    目录: 1. 查询当日.昨日.本周.本月.本季度.本年数据 2. 获取其他日期数据 查询结果: 3. 日期函数: 3.1 日期函数中参数 type 的设定值: 3.2 Convert(data_typ ...

  3. 在vue项目中使用momentjs获取今日、昨日、本周、本月、上月、本年、上年等日期,时间比较计算

    使用了momentjs之后发现这个日期处理控件实在是太强大了,参考下面的代码了解详细用法: 日期格式化 官网给出的几种情况(都是当前日期,若指定日期date, moment(date).format( ...

  4. shell 获取当月最后一天的方法

    shell 获取当月最后一天的方法 先获取当月1号,再获取下个月的第一天,再取lastday 先获取当月1号,再获取下个月的第一天,再取lastday firstday=date -d "$ ...

  5. vue 获取今日、昨日、本周、上周、本月、上月 日期时间,时间戳(获取系统时间)

    要求获得今日.昨日.本周.上周.本月.上月 的用户数据,因此查了一些文档之类的根据需求封装了几个方法,如果你的需求同我一样,那么你可以直接拷贝,按照步骤去使用即可.话不多说直接上代码 第一步:--安装 ...

  6. MySQL 获取今日、昨日、本周、上周、本月、上月、本年、去年日期

    MySQL 获取今日.昨日.本周.上周.本月.上月.本年.去年日期 -- 获取今年 SELECT YEAR(CURDATE()); -- 获取去年 SELECT ( YEAR(CURDATE()) - ...

  7. LocalDateTime类获取当日00:00与当月第一天

    LocalDateTime类获取当日00:00与当月第一天 LocalDateTime类 获取当日00:00 获取当月第一天 LocalDateTime类 Java8以前, Date.Calendar ...

  8. element的日期范围选择器快捷选择今日,昨日,本周,上周,本月,上个月,禁止选择当前日期之后的日期

    element的日期范围选择器快捷选择今日,昨日,本周,上周,本月,上个月,禁止选择当前日期之后的日期 <template><div class="card-data&qu ...

  9. 【四月答题勋章】四月答题勋章获取方法

    目录 4月答题挑战活动介绍 参与方式 奖项设置 参与奖 [上榜奖]详细介绍 学生专项奖 心得体会: 大家好,最近CSDN官方推出了一个很有意思的获取四月答题勋章活动,在这里给大家介绍一下勋章的获取方法 ...

最新文章

  1. 使用python通过selenium模拟打开chrome窗口报错 出现 您使用的是不受支持的命令行标记:--ignore-certificate-errors...
  2. sklearn 笔记:数据归一化(StandardScaler)
  3. python的mag模块_Python全栈-magedu-2018-笔记22
  4. IOS开发基础之UI的喜马拉雅的项目-10
  5. 设计模式 之 《组合模式》
  6. 最新的Windows phone Developer tools RTW 发布了
  7. 【英语学习】【Daily English】U05 Places L04 Can I have some painkillers?
  8. 【超详细】在Linux上远程登录遇到的若干问题及解决方法(一)
  9. Effective Java 学习笔记(第53条:接口优先于反射机制)
  10. 使用RMAN备份数据库和归档日志合二为一
  11. 创业一定要取个好名字,才容易实现人生逆袭
  12. 线性回归与梯度下降算法
  13. read while循环 tar脚本
  14. 21个js 技巧收藏
  15. 个人网页制作 大学生个人网页设计 个人网站模板 简单静态HTML个人网页作品
  16. 自定义错误页面 404.html
  17. DSP2812之定时器0
  18. sticky 失效问题
  19. 抖音扫码跳转QQ群等外链源代码分享
  20. java对齐_java字符串对齐方法

热门文章

  1. 程序员能力提升——7-2-1法则,让知识转化为职业竞争力
  2. TOJ 4354 HDU 4262 Juggler / 树状数组
  3. oracle实现列转行
  4. java使用set去重lit集合集合去重字符串集合去重
  5. com.alibaba.fastjson.JSONException: unclosed.str.lit
  6. 用腾讯云阿里云搭建自己的个人网站
  7. JAVASE IO流,文字不多,代码为主,自学用,谨慎借鉴,有错误请指正
  8. 【线代】特征值、惯性指数、标准型、规范型的关系?等价、相似与合同?
  9. powershell配置anaconda及解决【无法加载文件C:\Users\xxx\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本】的问题
  10. opencv曝光过度_使用 OpenCV 进行曝光融合(Exposure Fusion)成像