2

多数のジョブを持つスケジューラがあります。スケジューラーにあるすべてのアクティブなジョブを表示できるようにしたいのです。つまり、各ジョブがトリガーされたときに表示したいのです。これは私のコードです:

        sched.start();                

        JobDetail job = newJob(Jobs.class)
        .withIdentity(job_name_, "default") 
        .usingJobData("job_type", job_type_)            
        .build();

         Trigger trigger = newTrigger()
        .withIdentity(job_name_, "default")
        .startNow()                
        .withSchedule(cronSchedule(date_time_)) 
        .build();

        sched.scheduleJob(job, trigger);      

これはどのように行うことができますか?ジョブのトリガーからcron式を取得するにはどうすればよいですか?また、cron式を、式自体よりも詳細な日付または何かとして表示する方法はありますか?

どんな助けでも感謝されます、

前もって感謝します。

4

1 に答える 1

6

すべてのAPIがあります:

Trigger t = scheduler.getTrigger(new TriggerKey(job_name_, "default"))

返されたTriggerクラスには。がありgetNextFireTime()ます。それをサブクラス化してCRON式を取得します。

((CronTrigger)t).getCronExpression();

には、必要な他のSchedulerすべての方法があります。

于 2012-03-14T09:51:00.227 に答える