2016-08-22 5 views
1

작업을 예약하려면 cron식이 필요합니다. 작업 실행은 매일 오전 11시에 시작되어야하며 매분 11시 (최종 실행 시간)까지 실행되어야합니다.오전 11시에 작업을 실행하는 Cron식이 오후 11시에 완료되었습니다.

현재 23:00에 마지막 실행을 설정하는 방법을 모르겠습니다.

* * 11-23 * * * -이 표현식에 따라 작업은 11:00에서 23:59까지 실행됩니다.

* * 11-22 * * * -이 표현식에 따라 작업은 11:00에서 22:59까지 실행됩니다. 그래서 23시에 대한 마지막 실행을 놓친 것입니다.

제발, 어떻게 해결할 수 있는지 말해주세요.

답변

0

문제점을 해결할 수있는 방법이 있습니다. 이 솔루션은 두 크론 표현 만드는 것입니다 :

  1. 0 * 11-22 * * *을 -이 22시 59분 오후 오전 11 끝에서 시작됩니다.

  2. 0 0 23 * * * -이 작업은 매일 23:00에 한 번만 시작됩니다.

그래서, 내 코드는 지금과 같이 :

@Scheduled(cron = "0 * 11-22 * * *") 
    public void processPerformances() { 
    // do something(); 

    } 

    @Scheduled(cron = "0 0 23 * * *") 
    public void processPerformancesLastTime() { 
    processPerformances(); 
    }