无spring project演示
//创建Job实例,并把该实例关联MyBean.class
JobDetail jobDetail = JobBuilder.newJob(MyBean.class).build();
//创建Trigger实例,指定开始时间和结束时间以及执行频率
Trigger trigger = TriggerBuilder.newTrigger().startNow().withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(2).withRepeatCount(10)).build();
//创建Schedule
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
scheduler.start();
scheduler.scheduleJob(jobDetail, trigger);
有spring project演示
第一种 使用MethodInvokingJobDetailFactoryBean生产JobDetail,使用CronTriggerFactoryBean生产Trigger
<!-- Jobbean -->
<bean id="simpleJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="myBean"/>
<property name="targetMethod" value="printMessage"/>
</bean>
<!-- Trigger -->
<bean id="myTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="simpleJobDetail"/>
<property name="cronExpression" value="0/5 * * ? * *"/>
</bean>
<!-- Scheduler -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="jobDetails" ref="simpleJobDetail"/>
<property name="triggers" ref="myTrigger" />
</bean>
第二种 使用JobDetailFactoryBean生产JobDetail,使用SimpleTriggerFactoryBean生产Trigger
<!-- Jobbean -->
<bean id="myJobDetail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
<property name="jobClass" value="com.humman.springQuartz.quartz.SuperBean"/>
<property name="jobDataMap">
<map>
<entry key="myBean" value-ref="myBean" />
</map>
</property>
<property name="durability" value="true"/>
</bean>
<!-- Trigger -->
<bean id="myTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
<property name="jobDetail" ref="myJobDetail"/>
<property name="startDelay" value="1000"/>
<property name="repeatInterval" value="2000"/>
</bean>
<!-- Scheduler -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="jobDetails" ref="myJobDetail"/>
<property name="triggers" ref="myTrigger" />
</bean>
另外需要学习:quartz.properties 配置