ÎļþÃû´Ó ruoyi/src/main/java/com/ruoyi/common/utils/job/CronUtils.java ÐÞ¸Ä |
| | |
| | | package com.ruoyi.common.utils.job; |
| | | |
| | | import java.text.ParseException; |
| | | import java.util.Date; |
| | | import org.quartz.CronExpression; |
| | | |
| | | /** |
| | | * cron表达å¼å·¥å
·ç±» |
| | | * |
| | | * @author ruoyi |
| | | * |
| | | */ |
| | | public class CronUtils |
| | | { |
| | | /** |
| | | * è¿åä¸ä¸ªå¸å°å¼ä»£è¡¨ä¸ä¸ªç»å®çCron表达å¼çæææ§ |
| | | * |
| | | * @param cronExpression Cronè¡¨è¾¾å¼ |
| | | * @return boolean è¡¨è¾¾å¼æ¯å¦ææ |
| | | */ |
| | | public static boolean isValid(String cronExpression) |
| | | { |
| | | return CronExpression.isValidExpression(cronExpression); |
| | | } |
| | | |
| | | /** |
| | | * è¿åä¸ä¸ªå符串å¼,è¡¨ç¤ºè¯¥æ¶æ¯æ æCron表达å¼ç»åºæææ§ |
| | | * |
| | | * @param cronExpression Cronè¡¨è¾¾å¼ |
| | | * @return String æ ææ¶è¿å表达å¼é误æè¿°,妿ææè¿ånull |
| | | */ |
| | | public static String getInvalidMessage(String cronExpression) |
| | | { |
| | | try |
| | | { |
| | | new CronExpression(cronExpression); |
| | | return null; |
| | | } |
| | | catch (ParseException pe) |
| | | { |
| | | return pe.getMessage(); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * è¿åä¸ä¸ä¸ªæ§è¡æ¶é´æ ¹æ®ç»å®çCronè¡¨è¾¾å¼ |
| | | * |
| | | * @param cronExpression Cronè¡¨è¾¾å¼ |
| | | * @return Date 䏿¬¡Cronè¡¨è¾¾å¼æ§è¡æ¶é´ |
| | | */ |
| | | public static Date getNextExecution(String cronExpression) |
| | | { |
| | | try |
| | | { |
| | | CronExpression cron = new CronExpression(cronExpression); |
| | | return cron.getNextValidTimeAfter(new Date(System.currentTimeMillis())); |
| | | } |
| | | catch (ParseException e) |
| | | { |
| | | throw new IllegalArgumentException(e.getMessage()); |
| | | } |
| | | } |
| | | } |
| | | package com.ruoyi.quartz.util;
|
| | |
|
| | | import java.text.ParseException;
|
| | | import java.util.Date;
|
| | | import org.quartz.CronExpression;
|
| | |
|
| | | /**
|
| | | * cron表达å¼å·¥å
·ç±»
|
| | | * |
| | | * @author ruoyi
|
| | | *
|
| | | */
|
| | | public class CronUtils
|
| | | {
|
| | | /**
|
| | | * è¿åä¸ä¸ªå¸å°å¼ä»£è¡¨ä¸ä¸ªç»å®çCron表达å¼çæææ§
|
| | | *
|
| | | * @param cronExpression Cron表达å¼
|
| | | * @return boolean è¡¨è¾¾å¼æ¯å¦ææ
|
| | | */
|
| | | public static boolean isValid(String cronExpression)
|
| | | {
|
| | | return CronExpression.isValidExpression(cronExpression);
|
| | | }
|
| | |
|
| | | /**
|
| | | * è¿åä¸ä¸ªå符串å¼,è¡¨ç¤ºè¯¥æ¶æ¯æ æCron表达å¼ç»åºæææ§
|
| | | *
|
| | | * @param cronExpression Cron表达å¼
|
| | | * @return String æ ææ¶è¿å表达å¼é误æè¿°,妿ææè¿ånull
|
| | | */
|
| | | public static String getInvalidMessage(String cronExpression)
|
| | | {
|
| | | try
|
| | | {
|
| | | new CronExpression(cronExpression);
|
| | | return null;
|
| | | }
|
| | | catch (ParseException pe)
|
| | | {
|
| | | return pe.getMessage();
|
| | | }
|
| | | }
|
| | |
|
| | | /**
|
| | | * è¿åä¸ä¸ä¸ªæ§è¡æ¶é´æ ¹æ®ç»å®çCron表达å¼
|
| | | *
|
| | | * @param cronExpression Cron表达å¼
|
| | | * @return Date 䏿¬¡Cronè¡¨è¾¾å¼æ§è¡æ¶é´
|
| | | */
|
| | | public static Date getNextExecution(String cronExpression)
|
| | | {
|
| | | try
|
| | | {
|
| | | CronExpression cron = new CronExpression(cronExpression);
|
| | | return cron.getNextValidTimeAfter(new Date(System.currentTimeMillis()));
|
| | | }
|
| | | catch (ParseException e)
|
| | | {
|
| | | throw new IllegalArgumentException(e.getMessage());
|
| | | }
|
| | | }
|
| | | }
|