public class CronExpressionUtil extends Object
Cron表达式从左到右(用空格隔开):秒(0~59) 分(0~59) 小时(0~23) 日期(1~31) 月份(1~12的整数或者 JAN-DEC) 星期(1~7的整数或者 SUN-SAT (1=SUN)) 年份(可选,1970~2099)
所有字段均可使用特殊字符:, - * / 分别是枚举,范围,任意,间隔
日期另外可使用:? L W 分别是任意,最后,有效工作日(周一到周五)
星期另外可使用:? L # 分别是任意,最后,每个月第几个星期几
常用cron表达式:
(1)0 0 2 1 * ? * 表示在每月的1日的凌晨2点触发
(2)0 15 10 ? * MON-FRI 表示周一到周五每天上午10:15执行作业
(3)0 15 10 ? * 6L 2002-2006 表示2002-2006年的每个月的最后一个星期五上午10:15执行作
(4)0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时
(5)0 15 10 L * ? 每月最后一日的上午10:15触发
(6)0 15 10 ? * 6#3 每月的第三个星期五上午10:15触发
Cron表达式工具包含
1.验证和格式化Cron表达式方法,isValidExpression和formatExpression
2.生成下一个或多个执行时间方法,getNextTime和getNextTimeList
3.生成下一个或多个执行时间的日期格式化(yyyy-MM-dd HH:mm:ss)方法,getNextTimeStr和getNextTimeStrList
4.对比Cron表达式下一个执行时间是否与指定date相等方法,isSatisfiedBy
Modifier and Type | Method and Description |
---|---|
static String |
formatExpression(String cronExpression)
格式化Cron表达式
|
static Date |
getNextTime(String cronExpression)
生成下一个执行时间
|
static Date |
getNextTime(String cronExpression,
Date date)
生成下一个执行时间
|
static List<Date> |
getNextTimeList(String cronExpression,
Date date,
int num)
生成多个执行时间
|
static List<Date> |
getNextTimeList(String cronExpression,
int num)
生成多个执行时间
|
static String |
getNextTimeStr(String cronExpression)
生成下一个执行时间的日期格式化
|
static String |
getNextTimeStr(String cronExpression,
Date date)
生成下一个执行时间的日期格式化
|
static List<String> |
getNextTimeStrList(String cronExpression,
Date date,
int num)
生成多个执行时间的日期格式化
|
static List<String> |
getNextTimeStrList(String cronExpression,
int num)
生成多个执行时间的日期格式化
|
static boolean |
isSatisfiedBy(String cronExpression,
Date date)
对比Cron表达式下一个执行时间是否与指定date相等
|
static boolean |
isValidExpression(String cronExpression)
验证Cron表达式
|
public static boolean isValidExpression(String cronExpression)
cronExpression
- Cron表达式public static String formatExpression(String cronExpression)
cronExpression
- Cron表达式public static Date getNextTime(String cronExpression, Date date)
cronExpression
- Cron表达式date
- 日期public static Date getNextTime(String cronExpression)
cronExpression
- Cron表达式public static String getNextTimeStr(String cronExpression, Date date)
cronExpression
- Cron表达式date
- 日期public static String getNextTimeStr(String cronExpression)
cronExpression
- Cron表达式public static List<Date> getNextTimeList(String cronExpression, Date date, int num)
cronExpression
- Cron表达式date
- 日期num
- 数量public static List<Date> getNextTimeList(String cronExpression, int num)
cronExpression
- Cron表达式num
- 数量public static List<String> getNextTimeStrList(String cronExpression, Date date, int num)
cronExpression
- Cron表达式date
- 日期num
- 数量public static List<String> getNextTimeStrList(String cronExpression, int num)
cronExpression
- Cron表达式num
- 数量Copyright © 2021. All rights reserved.