04 2020 档案
摘要:从Java日期时间API系列第一篇博客开始,利用业余时间对Java日期时间API源码进行了系统的、多次的阅读实践,包括Date、LocalDate、LocalDateTime、LocalTime、Instant、ZonedDateTime、YearMonth和Timestamp等源码,把和时间紧密相关的内容,整理写成一个Java时间工具包xk-time,经过了多个版本迭代0.0.1-0.0.8,基本的功能已经完成。现在发布 1.0.0 版本。
阅读全文
摘要:时间戳是所有时间创建和转换的基础,通过简单的System.currentTimeMillis()获取到,但时间戳只是一个简单的数字,不转换为其他时间类没有意义,比如 年、月、日、时、分、秒、星期、闰年、时区、夏令时等,更多相关的比如各种节假日,星座等附加意义的信息。
阅读全文
摘要:实际使用中,经常需要使用不同精确度的Date,比如保留到天 2020-04-23 00:00:00,保留到小时,保留到分钟,保留到秒等,常见的方法是通过格式化到指定精确度(比如:yyyy-MM-dd),然后再解析为Date。Java8中可以用更多的方法来实现这个需求,下面使用三种方法:使用Format方法、 使用Of方法和使用With方法,性能对比,使用Of方法性能最优。
阅读全文
摘要:Java开发过程中经常会用到定时任务job的场景,比如定时处理数据报表等问题,开源作业调度框架也非常多,常用的开源作业调度框架有:Spring Task、Quartz和xxl-job等。各个框架的具体使用不再这里讨论,这里主要讨论一下其中cron表达式的计算应用,xk-time中的应用。
阅读全文