----------------------------------------------------------------------
还要引入jar 包 quartz-all-1.6.4.jar,下面的例子我用的是 quartz-all-1.6.4.jar
如果服务器不同,
可以用不同的jar 包
quartz-jboss-1.6.4.jar
quartz-oracle-1.6.4.jar
quartz-weblogic-1.6.4.jar
0 11 11 11 11 ? 每年11月11日11点11分触发一次
------------------------------------------------------------------------------------
我写了一个类!!!!!!!!!!
/**
*
*/
package com.budco.bmp.action.maintenance.temptest;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import org.quartz.CronTrigger;
import com.budco.bmp.core.util.DateUtil;
/**
* @author ale
*
*/
public class TestScheduleDate {
public static final String DATE_FORMAT_MONTH_DAY_YEAR_HOUR_MIN_AM_PM = "MM/dd/yyyy hh:mma";
// trigger
private final static String TRIGGER_PREVIEW_SCHEDULE = "triggerPreviewSchedule";
protected final static String GROUP_PREVIEW_SCHEDULE = "groupPreviewSchedule";
/**
*
*/
public TestScheduleDate() {
// TODO Auto-generated constructor stub
}
protected List<Date> getNext10Schedules(final String cron) throws ParseException {
final List<Date> results = new ArrayList<Date>();
final CronTrigger cronTrigger = new CronTrigger(TRIGGER_PREVIEW_SCHEDULE, GROUP_PREVIEW_SCHEDULE, cron);
Date firedate = new Date();
for (int i = 0; i < 10; i++) {
firedate = cronTrigger.getFireTimeAfter(firedate);
results.add(firedate);
}
return Collections.unmodifiableList(results);
}
/**
* @param args
* @throws ParseException
*/
public static void main(final String[] args) throws ParseException {
// TODO Auto-generated method stub
final TestScheduleDate tsd = new TestScheduleDate();
// protected static String default_cron = "0 * * * * ?";
// final String default_cron = "0 0/5 16,17 * * ?";
// final String default_cron = "0 15 10 * * ? *";
// final String default_cron = "0 10,30 14 ? 3 WED";
// final String default_cron = "0 11 11 11 11 ?";
// final String default_cron = "0 15 10 ? * MON-FRI"; // 表示周一到周五每天上午10:15执行作业
final String default_cron = "0 15 10 ? * 6L 2011-2012";//2011年至2012年间,每月最后一个周五的10点15分触发一次
final List<Date> dateList = tsd.getNext10Schedules(default_cron);
final List<String> results = new ArrayList<String>();
for (final Date da : dateList) {
results.add(DateUtil.format(da, DATE_FORMAT_MONTH_DAY_YEAR_HOUR_MIN_AM_PM));
}
for (final String str : results) {
System.out.println(str);
}
}
}
打印结果:
//2011年至2012年间,每月最后一个周五的10点15分触发一次
07/29/2011 10:15AM
08/26/2011 10:15AM
09/30/2011 10:15AM
10/28/2011 10:15AM
11/25/2011 10:15AM
12/30/2011 10:15AM
01/27/2012 10:15AM
02/24/2012 10:15AM
03/30/2012 10:15AM
04/27/2012 10:15AM
联系客服