2017-03-09 3 views
0

자바에서 쿼츠를 사용하여 cron 표현식을 작성하려고합니다. 매시간마다 일자리를 예약해야하는 시간과 분으로 두 가지 매개 변수가 있습니다. 지금까지 사용해 보았습니다. 예제 1 : - 1 시간 10 분마다 실행되도록 예약 작업입니다. -이 예제에서는 "0 */10 */1 * *?"과 같이 cron 표현식을 사용했습니다. -하지만이 작업은 매 10 분마다 실행되며 1 시간 10 분이 아닙니다.Quartz Scheduler Cron 특정 시간과 분으로 빈도 표현

왜이 표현이 작동하지 않는지 이해할 수 있습니까? 미리 감사드립니다.

답변

0

첫 번째 */10의 의미이기 때문에 cron 표현식이 10 분마다 실행됩니다. 두 번째 */1은 첫 번째 */10으로 인해 실행되기 때문에 중복됩니다.

내가하는 일은 분명하지 않습니다. 반복되는 일정은 명확하게 표현하기 까다로울 수 있으므로 몇 가지 예를 적어보고 거기에서 일하는 경향이 있습니다. 그래서, 내가 0 10 * * * ?이 일을해야한다고 생각하는 경우

  1. 1시 10분
  2. 2시 10분
  3. 3시 10분

:

당신은 같은 패턴을 얻을하려고 . 표현식을 이해하는 데 사용 된 설명서는 http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/tutorial-lesson-06.html이고 http://www.cronmaker.com/은 표현을 확인하는 데 정말로 도움이된다는 것을 알았습니다. 다음 번 트리거 시간을 알아낼 것입니다.

은 1로 SimpleTrigger을 시도

  1. 1시 10분
  2. 2시 20분
  3. 3시 반

즉, 고정 금리 모든 1:10 발사 달성하기 위해 : 10 간격.

+0

Hello Brabster, 위의 cron 표현식을 시도했는데 언급 한 패턴에 문제가 없습니다. 하지만 다음과 같은 패턴을 원합니다. 1 01:10 2 02:20 3 03:30 – Aniruddha

+0

하나의 cron 표현으로 표현할 수 있을지 잘 모르겠습니다. 고정 간격은 1:10입니다. 어떤 이유로 든 cron을 사용하는 것이 중요하다면 몇 가지 표현을 사용하여이를 수행 할 수 있습니다. 하나는 시간 트리거보다 10 시간 이전에, 다른 하나는 20 시간 이전에 사용합니다. 간단하고 이해하기 쉬운 것을 원한다면 다른 종류의 트리거가 더 좋을 수 있습니다 - SimpleTrigger는 간단한 간격으로 트리거링을 지원합니다 (예 : http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/). tutorial-lesson-05.html – Brabster

+0

SimpleTrigger와 함께 작동했습니다. 도움 주셔서 감사합니다. – Aniruddha