Я хочу выполнить работу в 8:00 утра и 3:10 вечера каждый день, используя запланированный весной - PullRequest
0 голосов
/ 28 мая 2018

Я использую @Scheduled весной, что будет нормально работать, если я захочу выполнить задачу за 5 секунд, используя @Scheduled (fixedRate = 5000), но я хочу выполнять задание в 8:00 утра и 3:10 вечера каждый день.который не работает.Ниже приведен мой код.

@Component
public class FinanceJob  {

    @Autowired
    AdminService adminService;

    @Autowired
    AdminDao dao;

    @Autowired
    CommonService cservice;


    //@Scheduled(fixedRate = 5000)

    // @Scheduled(cron = "0/20 * * * * ?")
    @Scheduled(cron="0 48 2 * * *",zone = "Indian/Maldives")
    public void sajan() {
        List<SystemParameter> paramList=cservice.getSysParam();

        for(SystemParameter param :paramList)
        {
            if(param.getUid()==263 && param.getIsactive()==1)
            {
                System.out.println("Hello Sahjan");
            }
        }

    }

}

1 Ответ

0 голосов
/ 28 мая 2018

AFAIK, вы не можете планировать работу по двум cron графикам.

Что вы можете сделать, это обернуть вашу задачу и выставить расписание другой функцией:

@Scheduled(cron="0 0 8 */1 * *",zone = "Indian/Maldives")
public void schedule1() {
   sajan();
}

@Scheduled(cron="0 10 15 */1 * *",zone = "Indian/Maldives")
public void schedule2() {
   sajan();
}

public void sajan() {

    // yOur task
}
...