Java时间日期转Cron表达式

简介: Java时间日期转Cron表达式

老规矩话不多说直接上代码:
package com.hx.dxyw.service.impl;

import java.text.SimpleDateFormat;
import java.util.Date;

/**

  • java日期转cron表达式工具类
    */
    public class CronUtils {

    /**

    • 每年时间format格式
      */
      private static final String DATEFORMAT_YEAR = "ss mm HH dd MM ? yyyy";

      /**

    • 每天时间format格式
      /
      private static final String DATEFORMAT_EVERYDAY = "ss mm HH
      * ?";

      /**

    • 每周时间format格式
      /
      private static final String SUNDAY = "ss mm HH ?
      1";
      private static final String MONDAY = "ss mm HH ? 2";
      private static final String TUESDAY = "ss mm HH ?
      3";
      private static final String WEDNESDAY = "ss mm HH ? 4";
      private static final String THURSDAY = "ss mm HH ?
      5";
      private static final String FRIDAY = "ss mm HH ? 6";
      private static final String SATURADY = "ss mm HH ?
      7";

      public static String formatDateByPattern(Date date, String dateFormat) {
      SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
      String formatTimeStr = null;
      if (date != null) {

       formatTimeStr = sdf.format(date);
      

      }
      return formatTimeStr;
      }
      /**

    • 时间转换时间表达式
      */
      public static String getCron(Date date, String dateFormat) {
      return formatDateByPattern(date, dateFormat);
      }

      public static void main(String[] args)throws Exception{
      String cron = getCron(new Date(), SUNDAY);
      System.out.println("每周六执行"+cron);

      String cron1 = getCron(new Date(), DATEFORMAT_EVERYDAY);
      System.out.println("每天执行"+cron1);

      String cron2 = getCron(new Date(), DATEFORMAT_YEAR);
      System.out.println("执行一次"+cron2);

      }
      }

相关文章
|
2月前
|
存储 Java 程序员
【Java】(6)全方面带你了解Java里的日期与时间内容,介绍 Calendar、GregorianCalendar、Date类
java.util 包提供了 Date 类来封装当前的日期和时间。Date 类提供两个构造函数来实例化 Date 对象。第一个构造函数使用当前日期和时间来初始化对象。Date( )第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。
205 0
|
4月前
|
安全 Java API
Java日期时间API:从Date到Java.time
本文深入解析了Java 8中引入的全新日期时间API,涵盖LocalDate、LocalTime、LocalDateTime、ZonedDateTime等核心类的使用,以及时间调整、格式化、时区处理和与旧API的互操作。通过实例对比,展示了新API在可变性、线程安全与易用性方面的显著优势,并提供迁移方案与实战技巧,助你掌握现代Java时间处理的最佳实践。
|
4月前
|
Java 编译器 API
Java Lambda表达式与函数式编程入门
Lambda表达式是Java 8引入的重要特性,简化了函数式编程的实现方式。它通过简洁的语法替代传统的匿名内部类,使代码更清晰、易读。本文深入讲解Lambda表达式的基本语法、函数式接口、方法引用等核心概念,并结合集合操作、线程处理、事件回调等实战案例,帮助开发者掌握现代Java编程技巧。同时,还解析了面试中高频出现的相关问题,助你深入理解其原理与应用场景。
|
4月前
|
安全 Java API
Java中的Lambda表达式:简洁与功能的结合
Java中的Lambda表达式:简洁与功能的结合
467 211
|
4月前
|
安全 Java
Java中的Switch表达式:更简洁的多路分支
Java中的Switch表达式:更简洁的多路分支
497 211
|
4月前
|
Java 编译器
Java 17 Switch表达式:更简洁、更强大的流程控制
Java 17 Switch表达式:更简洁、更强大的流程控制
|
2月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
199 1
|
2月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
225 1