自定义任务执行周期示例- 调度功能客户化-客户化文档
目录

自定义任务执行周期示例

import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import com.runqianapp.schedule.interfaces.ICycle;

/**
 * 自定义周期类需要实现ICycle接口的getNextTime方法,对任务中添加的首次执行时间进行计算,得到任务自此执行时间。
 * 调度器示例:每月一号执行任务
 * @author DYC
 *
 */
public class MonthBeginCycle implements ICycle {

 /**
  * 获取任务下次执行时间
  */
 public Timestamp getNextTime(String currTime) {//获取下个月第一天
  SimpleDateFormat f1=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");//设置时间格式
  Calendar c = Calendar.getInstance();
  try {
   c.setTime(f1.parse(currTime));
   c.add(c.MONTH,1);//当前月份加1个月
   c.set(c.DAY_OF_MONTH,1);//设置为1号
  } catch (ParseException e) {
   e.printStackTrace();
  }
  return  new Timestamp(c.getTimeInMillis());//返回任务下次执行时间
 }
}