需求:每隔两秒钟重复执行一次,直到永远
public class HelloJob implements Job{
public void execute(JobExecutionContext arg0) throws JobExecutionException { //打印当前的执行时间,格式为2017-01-01 00:00:00 Date date = new Date(); SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println("Current Exec Time Is:" + sf.format(date)); // TODO 编写具体的业务逻辑 System.out.println("Hello World!"); }
}
public class HelloScheduler { public static void main(String[] args) throws SchedulerException { //创建一个jobDetail实例,将实例与HelloJob class 绑定 JobDetail jobDetail = JobBuilder.newJob(HelloJob.class).withIdentity("myJob", "group1") .build(); //创建一个Trigger实例,定义该job立即执行,并且每隔两秒钟重复执行一次,直到永远 Trigger trigger = TriggerBuilder.newTrigger().withIdentity("myTrigger", "group1").startNow() .withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(2) .repeatForever()) .build(); //创建scheduler实例 SchedulerFactory sfact = new StdSchedulerFactory(); Scheduler scheduler = sfact.getScheduler(); scheduler.start(); //打印当前的时间,格式为2017-01-01 00:00:00 Date date = new Date(); SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println("Current Time Is:" + sf.format(date)); scheduler.scheduleJob(jobDetail, trigger); } }
