在做报表统计时,需要对指定时间内的数据做统计,则需要使用到时间日期API

在此使用的是java.util.Date的完美私生子LocalDate类

  •   LocalDate方法介绍
  1.   now() : 从默认时区的系统时钟中获取当前日期。
LocalDate l = LocalDate.now();
System.out.println(l.plusYears(1));

  2020-05-17

  Process finished with exit code 0

  2.  now(ZoneId) : 从指定时区的系统时钟中获取当前日期。

LocalDate l = LocalDate.now(ZoneId.of("-05:00"));
System.out.println(l.plusYears(1));

  3.  now(Clock) : 从指定时钟获取当前日期。

LocalDate l = LocalDate.now(Clock.systemUTC());

  4.  of(int,Month,int) : 从年、月和日获取LocalDate实例。

System.out.println(LocalDate.of(0, Month.MAY, 1));
0000-05-01

Process finished with exit code 0

  5.  ofYearDay(int year,int dyaOfYear) : 从指定年的获取指定年中的指定天获取LocalDate实例

LocalDate l = LocalDate.ofYearDay(1998, 99);
System.out.println(l);
1998-04-09

Process finished with exit code 0

  6.  ofEpochDay(long epochDay) : 从1970年开始获取指定天数的LocalDate实例

LocalDate l = LocalDate.ofEpochDay(0);
System.out.println(l);
1970-01-01

Process finished with exit code 0

先写到这里..   

 

下面是用到的地方:

Java获取上周指定日的日期

  •   获取上周星期一的日期
LocalDate local=LocalDate.now().with(DayOfWeek.MONDAY);

 以上方法更改上周指定日只要更改with()方法中的参数去指定过滤条件就行。就比如要获取今天日期所属这个礼拜的星期二的日期就可以:

LocalDate local=LocalDate.now().with(DayOfWeek.TUESDAY);
  •   获取上月某天日期
//now()当前时间为2019.5.17
LocalDate nowDate = LocalDate.now();
System.out.println(
  nowDate.minusMonths(1)
  .with(MonthDay.of(nowDate.minusMonths(1).getMonth(), 3))
);
2019-04-03

Process finished with exit code 0

先更新到这里,主要刚好在用,作个笔记同时各个方法之间的组合可以解决不同的需求,希望我这目前仅有的两个case也可以带给他人灵感。

  如果JDK为1.8以前处理时间日期问题时,也可以使用joda-time,当然1.8包括1.8之后则可以使用自带的java.time,因为java.time就是借鉴于joda-time来完善Java的日期时间处理问题。

  写博新手(haha), ε≡٩(๑>₃<)۶ 。

Java日期LocalDate使用的更多相关文章

  1. Java日期时间API系列8-----Jdk8中java.time包中的新的日期时间API类的LocalDate源码分析

    目录 0.前言 1.TemporalAccessor源码 2.Temporal源码 3.TemporalAdjuster源码 4.ChronoLocalDate源码 5.LocalDate源码 6.总 ...

  2. 【java】LocalDate和Date等新旧日期类的转化

    // 01. java.util.Date --> java.time.LocalDateTime public void UDateToLocalDateTime() { java.util. ...

  3. Java日期格式化

    翻译人员: 铁锚 翻译时间: 2013年11月17日 原文链接:   Simple example to show how to use Date Formatting in Java 代码示例如下, ...

  4. java日期详解

    [TOC] 一.简介 java中的日期处理一直是个问题,没有很好的方式去处理,所以才有第三方框架的地位比如joda. 文章主要对java日期处理的详解,用1.8可以不用joda. 1. 相关概念 首先 ...

  5. 在JDBC中使用Java8的日期LocalDate、LocalDateTime

    在实体Entity里面,可以使用java.sql.Date.java.sql.Timestamp.java.util.Date来映射到数据库的date.timestamp.datetime等字段 但是 ...

  6. Failed to convert value of type 'java.lang.String' to required type 'java.time.LocalDate';

    springboot jdbc查询使用LocalDate报:Failed to convert value of type 'java.lang.String' to required type 'j ...

  7. Java 日期处理类库Joda-Time简介

    http://www.ibm.com/developerworks/cn/java/j-jodatime.html 登录 (或注册) 中文 IBM 技术主题 软件下载 社区 技术讲座 搜索 devel ...

  8. Java日期时间API系列6-----Jdk8中java.time包中的新的日期时间API类

    因为Jdk7及以前的日期时间类的不方便使用问题和线程安全问题等问题,2005年,Stephen Colebourne创建了Joda-Time库,作为替代的日期和时间API.Stephen向JCP提交了 ...

  9. java.lang.IllegalStateException: No primary or default constructor found for class java.time.LocalDate

    转载自:https://blog.csdn.net/Coder_Arley/article/details/81910705 springboot中报错如下: springmvc也可以使用类似处理方法 ...

随机推荐

  1. 自定义button上传按钮

    <div class="upload_files"> <input type="file" class="upload_icon&q ...

  2. CentOS 7 下用 firewall-cmd / iptables 实现 NAT 转发供内网服务器联网

    自从用 HAProxy 对服务器做了负载均衡以后,感觉后端服务器真的没必要再配置并占用公网IP资源. 而且由于托管服务器的公网 IP 资源是固定的,想上 Keepalived 的话,需要挤出来 3 个 ...

  3. 《Hadoop高级编程》之为Hadoop实现构建企业级安全解决方案

    本章内容提要 ●    理解企业级应用的安全顾虑 ●    理解Hadoop尚未为企业级应用提供的安全机制 ●    考察用于构建企业级安全解决方案的方法 第10章讨论了Hadoop安全性以及Hado ...

  4. iOS programming UITabBarController

    iOS programming UITabBarController 1.1 View controllers become more interesting when the user's acti ...

  5. 使用Jenkins进行android项目的自动构建(3)

    建立Jenkins项目 1. “新增作业”->填写作业名称->选择“建置 Maven 2 或 3 專案”->OK.新增成功后会进入“組態設定”,暂时先保留默认值,稍后再进行设定. 2 ...

  6. JSP标签 <meta.....>作用总结

    <metahttp-equiv="pragma" content="no-cache"> <metahttp-equiv="cach ...

  7. OracleService類

    using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Lin ...

  8. webdrive脚本打开firefox浏览器,报“AttributeError: module 'selenium.webdriver' has no attribu

    按照网上提供的方法: 下载geckodriver之后解压缩到 Firefox安装目录 下 添加 Firefox安装目录 到 系统变量Path 重启pycharm 照此步骤执行后,仍然报同样的错.折腾了 ...

  9. 离线缓存 application cache

    1. 什么是离线缓存: 离线缓存可以将站点的一些文件缓存到本地,它是浏览器自己的一种机制,将需要的文件缓存下来,以便后期即使没有连接网络,被缓存的页面也可以展示. 例子:比如我们在手机或电脑上访问一个 ...

  10. pycharm acejumpchar插件

    1链接:https://plugins.jetbrains.com/plugin/7163-emacsideas 2将其pycharm路径下:\.PyCharm2017.1\config\plugin ...