「Java」Quartz Schedulerで実行環境情報を取得するサンプル

書式
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
使用例

package org.ws.quartz.arkgame;

import org.quartz.Job;
import org.quartz.JobDetail;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

//インタフェースを実装
public class SampleJob implements Job {
    
    private static Logger logger = LoggerFactory.getLogger(SampleJob.class);
    
      //主処理
    @Override
    public void execute(JobExecutionContext context) throws JobExecutionException {
        
        logger.info("study skill in arkgame ");
        
        // ジョブの詳細情報
        JobDetail jobDetail = context.getJobDetail();
        
        // JobDetailの名前とグループ名
        logger.info("Name and Group: "+jobDetail.getKey());
        
        // Schedulerの取得
        Scheduler scheduler = context.getScheduler();
        try {
            logger.info("スケジューラ名: "+scheduler.getSchedulerName());
        } catch (SchedulerException e) {
            e.printStackTrace();
        }
        
        logger.info("ジョブ クラス: "+jobDetail.getJobClass());
        
        // ジョブ実行時間
        logger.info("実行時間t "+context.getFireTime());
        
        // 次のジョブの実行時間
        logger.info("今度ジョブの実行時間: "+context.getNextFireTime());
    }
}

 

Java

Posted by arkgame