当前时间是否在区间范围内

一、maven配置####

<dependency>
      <groupId>joda-time</groupId>
      <artifactId>joda-time</artifactId>
      <version>2.9.9</version>
</dependency>

二、工具类####

/**
     * 是否包含在区间范围内(yyyy-MM-dd)
     *
     * @param start 开始日期
     * @param end   结束日期
     * @return 比较结果
     */
    public static boolean containsIntervalOfDate(String start, String end) {
        DateTimeFormatter fmt = DateTimeFormat.forPattern("yyyy-MM-dd");
        DateTime startTime =
            fmt.parseDateTime(start).withHourOfDay(00).withMinuteOfHour(00).withSecondOfMinute(00);
        DateTime endTime =
            fmt.parseDateTime(end).withHourOfDay(23).withMinuteOfHour(59).withSecondOfMinute(59);

        System.out.println(startTime.toString("yyyy-MM-dd HH:mm:ss"));
        System.out.println(endTime.toString("yyyy-MM-dd HH:mm:ss"));

        Interval interval = new Interval(startTime, endTime);
        return interval.contains(new DateTime());
    }

    /**
     * 是否包含在区间范围内(yyyy-MM-dd HH:mm:ss)
     *
     * @param start 开始日期
     * @param end   结束日期
     * @return 比较结果
     */
    public static boolean containsIntervalOfDateTime(String start, String end) {
        DateTimeFormatter fmt = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
        DateTime startTime = fmt.parseDateTime(start);
        DateTime endTime = fmt.parseDateTime(end);

        Interval interval = new Interval(startTime, endTime);
        return interval.contains(new DateTime());
    }

    /**
     * 获取当前日期(yyyy-MM-dd)
     * @return 日期
     */
    public static String getCurrDate() {
        return LocalDate.now().toString("yyyy-MM-dd");
    }

    /**
     * 是否包含在指定的区间范围内
     * @param start 开始时间
     * @param end 结束时间
     * @return 比较结果
     */
    public static boolean containsIntervalOfTime(String start, String end) {
        DateTimeFormatter fmt = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
        String dateStart = getCurrDate() + " " + start;
        String dateEnd = getCurrDate() + " " + end;
        DateTime startTime = fmt.parseDateTime(dateStart);
        DateTime endTime = fmt.parseDateTime(dateEnd);

        System.out.println(startTime.toString("yyyy-MM-dd HH:mm:ss"));
        System.out.println(endTime.toString("yyyy-MM-dd HH:mm:ss"));

        Interval interval = new Interval(startTime, endTime);
        return interval.contains(new DateTime());
    }
原文地址:https://www.cnblogs.com/muyl/p/7298712.html