JDK8 Date 日期常用使用方法

2023-11-10

JDBC日期的转换

最新JDBC映射将把数据库的日期类型和Java 8的新类型关联起来:

SQL -> Java
date -> LocalDate
time -> LocalTime
timestamp -> LocalDateTime

LocalDate使用

看看新的LocalDate怎么用:

// 取当前日期:
LocalDate today = LocalDate.now(); // -> 2021-04-06
// 根据年月日取日期,04月就是04:
LocalDate crischristmas = LocalDate.of(2021, 04, 06); // -> 2021-04-06
// 根据字符串取:
LocalDate endOfFeb = LocalDate.parse(“2021-04-06”); // 严格按照ISO yyyy-MM-dd验证,04写成4都不行,当然也有一个重载方法允许自己定义格式
LocalDate.parse(“2021-02-30”); // 无效日期无法通过:DateTimeParseException: Invalid date

日期转换经常遇到如:

// 取本月第1天:
LocalDate firstDayOfThisMonth = today.with(TemporalAdjusters.firstDayOfMonth()); // 2021-04-01
// 取本月第2天:
LocalDate secondDayOfThisMonth = today.withDayOfMonth(2); // 2021-04-02
// 取本月最后一天,再也不用计算是28,29,30还是31:
LocalDate lastDayOfThisMonth = today.with(TemporalAdjusters.lastDayOfMonth()); // 2021-04-30
// 取下一天:
LocalDate firstDayOfNextMonth = lastDayOfThisMonth.plusDays(1); // 变成了2021-05-01
// 取2021年1月第一个周一,这个计算用Calendar要死掉很多脑细胞:
LocalDate firstMondayOf2015 = LocalDate.parse(“2021-01-01”).with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY)); // 2021-01-04

LocalTime
LocalTime只包含时间,以前用java.util.Date怎么才能只表示时间呢?答案是,假装忽略日期。

LocalTime包含毫秒:

LocalTime now = LocalTime.now(); // 17:17:09.012

你可能想清除毫秒数:

LocalTime now = LocalTime.now().withNano(0)); // 17:17:09

构造时间也很简单:

LocalTime zero = LocalTime.of(0, 0, 0); // 00:00:00
LocalTime mid = LocalTime.parse(“13:00:00”); // 13:00:00

时间也是按照ISO格式识别,但可以识别以下3种格式:12:00
12:01:02
12:01:02.345

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd:HH:mm:ss");

LocalDateTime dateTime = LocalDateTime.parse("2017-12-15:19:15:01",formatter);

System.out.println(dateTime.toString());

 



 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JDK8 Date 日期常用使用方法 的相关文章

  • 将构造函数作为参数传递给方法

    我是java新手 开始研究构造函数 我看到一些构造函数作为参数传递给方法的示例 请告诉我当构造函数作为参数传递给方法时会发生什么 或者建议我一些链接 我可以在其中获得有关使用构造函数的足够知识 根据您需要传递构造函数的目的 您可以考虑传递供
  • 使类只能从特定类实例化

    假设我有 3 节课class1 class2 and class3 我怎样才能拥有它class1只能通过实例化class2 class1 object new class1 但不是 class3 或任何其他类 我认为它应该与修饰符一起使用
  • 重写 getPreferredSize() 会破坏 LSP

    我总是在这个压倒一切的网站上看到建议getPreferredSize 而不是使用setPreferredSize 例如 如前面的线程所示 对于固定大小的组件 使用重写 getPreferredSize 而不是使用 setPreferredS
  • 运行 java -jar 时出现 java.lang.ClassNotFoundException

    我正在使用 ant 来构建我的build xml文件 它编译正常 但随后得到运行时java lang NoClassDefFoundError通过 运行生成的 jar 时java jar my jar jar 似乎这个问题出现了很多 但没有
  • Spring中的ProxyFactoryBean

    有人可以解释一下吗代理工厂Bean http static springsource org spring docs current javadoc api org springframework aop framework ProxyFa
  • 使用 Spring 控制器处理错误 404

    I use ExceptionHandler处理我的网络应用程序抛出的异常 在我的例子中我的应用程序返回JSON回应HTTP status用于对客户端的错误响应 但是 我正在尝试弄清楚如何处理error 404返回与处理的类似的 JSON
  • 无法访问“不安全”java方法的java表达式语言

    我正在开发一个项目 让用户向服务器提交小 脚本 然后我将执行这些脚本 有很多脚本语言可以嵌入到Java程序中 例如mvel ognl uel clojure rhino javascript等 但是 据我所知 它们都允许脚本编写者调用Jav
  • 我需要在 JFileChooser(打开模式)中显示不带扩展名的文件名。如何?

    我在打开模式下使用 JFileChooser 我需要显示不带扩展名的 文件名 字段 如何 我知道文件视图 它删除文件系统文件中的扩展名 但将所选文件中的扩展名保留在 文件名 字段中解释 http saveimg ru show image
  • 在java中将字符串日期转换为美国格式

    我有下面的代码 其中日期为字符串类型 我必须将其设置为美国格式 所以下面我已经展示了它 private static final SimpleDateFormat usOutputDate new SimpleDateFormat MM d
  • 无法从资源加载图片

    So I am trying to load a image file from a resource so that when I export my application into a jar file it could be use
  • 插入时的 iBatis 判别器

    我有一个抽象类Example以及与之相伴的具体子类 我使用鉴别器来提取数据out数据库的 像这样
  • 在带有 Protocol Buffers 的项目中使用 Proguard 有什么特点?

    我有一个使用 Google Protocol Buffers 的项目 一旦我尝试用 ProGuard 对其进行混淆 似乎 protobuf 会导致问题 我将所有自己的类打包成mybuildedclasses jar 谷歌代码被打包成prot
  • 如何从intellij项目视图中隐藏不必要的文件?

    给定一个示例 gradle 项目 其项目结构如下所示 正如你所看到的 有很多东西你实际上不需要在想法中看到 但你需要它们存在 我知道下面被忽略的文件 文件夹类型Editor File Types但这些正在影响库和项目 idea 会在各处忽略
  • 如何以编程方式创建 CardView

    我正在开发一个 Android 应用程序Java Android Studio 我想在活动中创建CardView以编程方式 我想将以下属性设置为CardView layout width wrap content layout row 0
  • 如何使用Gson仅从Json反序列化某些特定字段?

    我有以下 JSON 字符串 channel bvmt initValues data value instrumentIds TN0007250012 TN0007500010 instruments mnemonic ADWYA marc
  • 如何制作一个makefile只用于编译一些java文件?

    我有三个java文件 名为A java B java C java A将创建对象B B将创建对象C 但我以前从未构建过makefile 有谁可以帮我构建一个 makefile 来编译这三个 java 文件吗 我应该使用什么工具来制作 mak
  • 如何从 JavaFX 中的另一个控制器类访问 UI 元素?

    我有一个使用 NetBeans 8 编写的 JavaFX Java 8 应用程序 没有SceneBuilder 我的应用程序有一个主窗口 该窗口有自己的 FXML 文件 primary fxml 和自己的控制器类 FXMLPrimaryCo
  • 如何使用自定义 JDK 构建 Jenkins 项目?

    我有一个常规的 Jenkins 实例 运行一些多分支管道 该实例在 JDK 11 上运行 因为 Jenkins 并不真正支持更高版本 没关系 但不好的是 我的所有管道似乎也都受到 Java 11 的限制 Jenkins 仅使用它自己也使用的
  • Java/MongoDB 按日期查询

    我将一个值作为 java util Date 存储在我的集合中 但是当我查询以获取两个特定日期之间的值时 我最终得到的值超出了范围 这是我的代码 插入 BasicDBObject object new BasicDBObject objec
  • mybatis:使用带有 XML 配置的映射器接口作为全局参数

    我喜欢使用 XML 表示法来指定全局参数 例如连接字符串 我也喜欢 Mapper 注释 当我尝试将两者结合起来时 我得到这个例外 https stackoverflow com questions 4263832 type interfac

随机推荐

  • MongoDB分片实战(一):集群搭建

    随笔 97 文章 9 评论 337 MongoDB分片实战 一 集群搭建 环境准备 Linux环境 主机 OS 备注 192 168 32 13 CentOS6 3 64位 普通PC 192 168 71 43 CentOS6 2 64位
  • Maven 4、JDK配置

    当你的idea中有多个jdk的时候 就需要指定你编译和运行的jdk 在settings xml中配置
  • 使用命令把类打成jar包

    测试用类 public class Hello public static void main String args System out println hello world 一般的Jar包 生成class文件 在命令行中输入下面代码
  • windows桌面应用自动化测试

    1 AutoIt3 原理 使用spy抓应用的hwnd 根据hwnd获取窗口信息 模拟发送鼠标按键 移动窗口实现自动化操作 缺点 获取到的信息少 编程实现复杂 2 UIAutomation msdn介绍 Microsoft UI Automa
  • STM32 USB DFU功能

    STM32 USB DFU功能 工具的安装配置 CubeMX上配置 完善接口 工具使用 HEX固件转为DFU文件 更新固件 DFU特点 工程代码 DFU的全称为 DownLoad Firmware Update即固件升级 以下配置以STM3
  • Junit5单元测试

    配置 Maven配置 我用的spring版本是2 2 2 其实引入一个就行
  • 解读开源 Go HTTP 框架 Hertz

    前言 在参与 Hertz 框架的开发迭代过程中 对 Hertz 的主库也越来越熟悉 接下来的几篇文章我将分别解析 Hertz 的服务注册 服务发现和负载均衡拓展 最后会使用适配于 Hertz 的 etcd 拓展进行实战 欢迎大家关注 Her
  • DSP之TMS320F28335学习总结与笔记(二)————ADC模块

    F28335 ADC模块 ADC转换模块 A D转换器 ADC 将模拟量转换为数字量通常要经过四个步骤 采样 保持 量化和编码 采样 将一个时间上连续变化的模拟量转化为时间上离散变化的模拟量 保持 将采样结果存储起来 直到下次采样 这个过程
  • 高精度斐波那契

    1 为何会有高精度斐波那契一说 0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13 8 21 9 34 10 55 11 89 12 144 13 233 14 377 15 610 16 987 17 1597 18 258
  • CentOS6/7 日常管理--启动服务及日志查看

    CentOS6 chkconfig chkconfig list显示开机启动服务列表 chkconfig level 3 服务名 on off chkconfig 服务名 on off chkconfig del 服务名 删除 关闭 服务
  • 程序员搜索引擎比较

    正如大家口中所说的一样 百度搜索引擎吃相太难看了 如果谷歌搜索还在的话 百度搜索的日子可能并不会太好过 其他搜索引擎 1 360搜索 比较少用甚至没有用过的搜索引擎 360的全家桶太恶心了 简直是流氓 所以很多时候360安全管家 杀毒什么的
  • 开源框架 WebFirst 一键生成项目,在线建表

    1 WebFirst框架描述 WebFirst 是果糖大数据团队开发的新一代 高性能 代码生成器 数据库设计工具 由 net core sqlsugar 开发 导入1000个表只要1 2秒 用法简单 功能强大 支持多种数据库 具体功能如下
  • Bundle Adjustment 光束平差法

    https www cnblogs com Jessica jie p 7739775 html 感觉这个链接讲的比较好理解 看slam的书完全一脸懵
  • linux启动redis失败,解决redis服务启动失败的问题

    最近学redis 就遇到了各种坑 在这里分享一下 我是将redis做成后台 安装 配置环境变量统统省略掉了 做成后台服务呢 首先 cd到redis的安装目录下 再cd到util 接着执行 install server sh 然后修改服务名称
  • windows批处理文件删除n天前的文件

    author skate time 2010 12 23 windows批处理文件删除n天前的文件 用批处理文件删除n天前的文件如果操作系统是 Windows Server 2003 那就好办了 因为它有一个forfiles命令能够查找满足
  • BI大数据名词术语

    大数据的出现带来了许多新的术语 但这些术语往往比较难以理解 因此 我们通过本文给出一个常用的大数据术语表 抛砖引玉 供大家深入了解 部分定义参考了相应的博客文章 A 聚合 Aggregation 搜索 合并 显示数据的过程 算法 Algor
  • Postman之全局变量、环境变量

    1 什么是环境变量 环境变量 postman可以自定义环境参数值 这样就不用每次请求都去输入某些值 直接引用设置的值 使我们的测试更方便 例如 通过变换环境变量来快速变换环境地址 可将本地 测试环境的IP添加至不同的环境变量 调用时使用 x
  • 'react-scripts' 不是内部或外部命令 、propTypes is not defined 解决办法

    在手动安装了React 提供的第三方库 prop types报错的 我的React 就报错运行不了了 报错如下 react scripts 不是内部或外部命令 也不是可运行的程序 或批处理文件 这是一个在学习React 踩的坑 百度了一下
  • webpack打包vue

    在Windows10系统下 自定义打包整个Vue文件夹项目的相关配置项涉及以下内容 安装Node js和npm Node js官网 https nodejs org en download npm是Node js的包管理工具 在Node j
  • JDK8 Date 日期常用使用方法

    JDBC日期的转换 最新JDBC映射将把数据库的日期类型和Java 8的新类型关联起来 SQL gt Java date gt LocalDate time gt LocalTime timestamp gt LocalDateTime L