2016-07-26 9 views
0

結果は見つかりませんでした。私は、オブジェクトをbashスクリプトとcron式のパスを持って、実行するタイミングを指定したいと思っています。それはSpringBootプロジェクトです。私はそれがこのように見える:クラスフィールドのcron式を使用してジョブをスケジュールする

public class TestScript { 

    private String cronExpression; 
    private String pathToFile; 

    public void execute() { 
     // either it's @Scheduled or execute another way 
    } 
} 

それは可能ですか?できれば私を少しでも導いてください。

答えて

1

[OK]を、私は動的に雇用を創出し、私のカスタムサービスを作るために管理:

@Service 
public class DynamicJob { 

    public void schedule(TestScript testScript) { 
     try { 
      JobDetail job = JobBuilder.newJob(TestScript.class) 
        .withIdentity(testScript.getName(), "default group") 
        .build(); 

      Trigger trigger = TriggerBuilder.newTrigger() 
        .withIdentity(testScript.getName().concat(" trigger"), "groupAll") 
        .withSchedule(CronScheduleBuilder.cronSchedule(testScript.getCronExpression())) 
        .build(); 

      Scheduler scheduler = new StdSchedulerFactory().getScheduler(); 
      scheduler.start(); 
      scheduler.scheduleJob(job, trigger); 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 

} 

TestScriptクラスはorg.quartz.Jobを実装し、私はquartzライブラリのバージョン2.2.1

を使用します
関連する問題