首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >java工具:《判断当前时间是否在数据库起止时间范围内,是 ,返回true;否,返回false》

java工具:《判断当前时间是否在数据库起止时间范围内,是 ,返回true;否,返回false》

原创
作者头像
刘大猫
发布2026-03-15 14:10:36
发布2026-03-15 14:10:36
940
举报
文章被收录于专栏:JAVA相关JAVA相关

@toc

一、介绍

功能说明

这是一个判断当前时间是否在指定时间范围内的工具方法。方法接收两个 Date 类型的参数(开始时间和结束时间),判断当前的系统时间是否落在这两个时间点之间。

参数说明

  • dbBeginDate:开始时间(从数据库获取)
  • dbEndDate:结束时间(从数据库获取)

返回值

  • true:当前时间在开始时间和结束时间之间
  • false:当前时间不在指定时间范围内

实现原理

  1. 获取当前时间:使用 new Date() 获取当前系统时间/** * 判断当前时间是否在数据库起止时间范围内,是 ,返回true;否,返回false * @param dbBeginDate 开始日期 * @param dbEndDate 结束日期 * @return 结果 */ public static boolean determineWhetherItMatchesTheTime(Date dbBeginDate, Date dbEndDate) { logger.info("-determineWhetherItMatchesTheTime-dbBeginDate:{},dbEndDate:{}", dbBeginDate, dbEndDate); boolean flag = false; // 获取当前日期和时间 Date currentDate = new Date(); // 将日期转换为LocalTime对象 LocalTime localTime = currentDate.toInstant().atZone(ZoneId.systemDefault()).toLocalTime(); logger.info("当前时间:{}", localTime); LocalTime dbBeginLocalTime = dbBeginDate.toInstant().atZone(ZoneId.systemDefault()).toLocalTime(); LocalTime dbEndLocalTime = dbEndDate.toInstant().atZone(ZoneId.systemDefault()).toLocalTime(); logger.info("dbBeginLocalTime:{},dbEndLocalTime:{}", dbBeginLocalTime, dbEndLocalTime); if (localTime.isBefore(dbEndLocalTime) && localTime.isAfter(dbBeginLocalTime)) { flag = true; } return flag; }
  2. 时间转换:将 Date 类型转换为 Java 8 的 LocalTime 类型(只保留时间部分,忽略日期)
  3. 时间比较:使用 LocalTime 的 isBefore() 和 isAfter() 方法进行范围判断
  4. 日志记录:详细的日志输出便于调试和监控二、代码

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、介绍
    • 功能说明
    • 参数说明
    • 返回值
    • 实现原理
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档