MainJob.java
1
package
jobs;
2
3 import org.apache.log4j.Logger;
4 import org.quartz.JobExecutionContext;
5 import org.quartz.JobExecutionException;
6 import org.springframework.scheduling.quartz.QuartzJobBean;
7
8 public class MainJob extends QuartzJobBean
{
9 private Logger logger = Logger.getLogger(getClass());
10 @Override
11 protected void executeInternal(JobExecutionContext context)
12 throws JobExecutionException
{
13 // TODO Auto-generated method stub
14 logger.debug("Just say hi.");
15 }
16
17}
18
2
3 import org.apache.log4j.Logger;
4 import org.quartz.JobExecutionContext;
5 import org.quartz.JobExecutionException;
6 import org.springframework.scheduling.quartz.QuartzJobBean;
7
8 public class MainJob extends QuartzJobBean

9 private Logger logger = Logger.getLogger(getClass());
10 @Override
11 protected void executeInternal(JobExecutionContext context)
12 throws JobExecutionException

13 // TODO Auto-generated method stub
14 logger.debug("Just say hi.");
15 }
16
17}
18
application.xml
<?
xml version="1.0" encoding="UTF-8"
?>
< beans xmlns =http://www.springframework.org/schema/beans
xmlns:xsi =http://www.w3.org/2001/XMLSchema-instance
xmlns:jee =http://www.springframework.org/schema/jee
xsi:schemaLocation ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.0.xsd" >
<!-- 任务调度对象 -->
< bean id ="mainJob"
class ="org.springframework.scheduling.quartz.JobDetailBean" >
<!-- 运行的类 -->
< property name ="jobClass" >
< value > jobs.MainJob </ value >
</ property >
<!-- 需要用到的对象 -->
< property name ="jobDataAsMap" >
< map >
< entry key ="data" >
< value > data </ value >
</ entry >
</ map >
</ property >
</ bean >
<!-- 简单的触发器 -->
< bean id ="mainTrigger"
class ="org.springframework.scheduling.quartz.SimpleTriggerBean" >
< property name ="jobDetail" >
<!-- 上面创建的任务调度对象 -->
< ref bean ="mainJob" />
</ property >
<!-- 启动60秒后执行任务调度的excute方法 -->
< property name ="startDelay" >
< value > 6000 </ value >
</ property >
<!-- 运行次数 -->
< property name ="repeatCount" >
< value > 0 </ value >
</ property >
<!-- 隔一个小时运行一次(貌似多余,不写会报错) -->
< property name ="repeatInterval" >
< value > 3600000 </ value >
</ property >
</ bean >
<!-- 任务调度工厂类 -->
< bean
class ="org.springframework.scheduling.quartz.SchedulerFactoryBean" >
<!-- 这一部分的配置不用管 -->
< property name ="quartzProperties" >
< props >
< prop key ="org.quartz.threadPool.class" >
org.quartz.simpl.SimpleThreadPool
</ prop >
< prop key ="org.quartz.threadPool.threadCount" > 10 </ prop >
< prop key ="org.quartz.threadPool.threadPriority" >
5
</ prop >
< prop
key ="org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread" >
true
</ prop >
</ props >
</ property >
<!-- 触发器,可以放一大堆触发器 -->
< property name ="triggers" >
< list >
<!-- 在这里加 -->
< ref bean ="mainTrigger" />
</ list >
</ property >
</ bean >
</ beans >
< beans xmlns =http://www.springframework.org/schema/beans
xmlns:xsi =http://www.w3.org/2001/XMLSchema-instance
xmlns:jee =http://www.springframework.org/schema/jee
xsi:schemaLocation ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.0.xsd" >
<!-- 任务调度对象 -->
< bean id ="mainJob"
class ="org.springframework.scheduling.quartz.JobDetailBean" >
<!-- 运行的类 -->
< property name ="jobClass" >
< value > jobs.MainJob </ value >
</ property >
<!-- 需要用到的对象 -->
< property name ="jobDataAsMap" >
< map >
< entry key ="data" >
< value > data </ value >
</ entry >
</ map >
</ property >
</ bean >
<!-- 简单的触发器 -->
< bean id ="mainTrigger"
class ="org.springframework.scheduling.quartz.SimpleTriggerBean" >
< property name ="jobDetail" >
<!-- 上面创建的任务调度对象 -->
< ref bean ="mainJob" />
</ property >
<!-- 启动60秒后执行任务调度的excute方法 -->
< property name ="startDelay" >
< value > 6000 </ value >
</ property >
<!-- 运行次数 -->
< property name ="repeatCount" >
< value > 0 </ value >
</ property >
<!-- 隔一个小时运行一次(貌似多余,不写会报错) -->
< property name ="repeatInterval" >
< value > 3600000 </ value >
</ property >
</ bean >
<!-- 任务调度工厂类 -->
< bean
class ="org.springframework.scheduling.quartz.SchedulerFactoryBean" >
<!-- 这一部分的配置不用管 -->
< property name ="quartzProperties" >
< props >
< prop key ="org.quartz.threadPool.class" >
org.quartz.simpl.SimpleThreadPool
</ prop >
< prop key ="org.quartz.threadPool.threadCount" > 10 </ prop >
< prop key ="org.quartz.threadPool.threadPriority" >
5
</ prop >
< prop
key ="org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread" >
true
</ prop >
</ props >
</ property >
<!-- 触发器,可以放一大堆触发器 -->
< property name ="triggers" >
< list >
<!-- 在这里加 -->
< ref bean ="mainTrigger" />
</ list >
</ property >
</ bean >
</ beans >