在spring中使用quartz的一個小例子
spring3不支持quartz2
1.業務調度的類(就是你想要做的事情的邏輯部門) public class QuartzTest { public void quartzTest(){ System.out.println("I Love You, zhuzhu"); } } 2.寫一個job public class RunJob extends QuartzJobBean{ private QuartzTest quartztest;public QuartzTest getQuartztest() { return quartztest; } public void setQuartztest(QuartzTest quartztest) { this.quartztest = quartztest; } @Override protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException { quartztest.quartzTest(); }
} 3.在xml中配置 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> //注冊一個調度 <bean id="quartztest" class="quartz.test.manager.QuartzTest" />
<!-- Spring Quartz --> //配置一個job,注意class中的類 <bean name="quartzJob" class="org.springframework.scheduling.quartz.JobDetailBean"> //name="jobClass"這個名字不能隨便更改, value值就是寫的job <property name="jobClass" value="quartz.test.job.RunJob" /> <property name="jobDataAsMap"> <map>//key的值要與job的字段名稱對應, value-ref是你注冊的調度的id名稱 <entry key="quartztest" value-ref="quartztest" /> </map> </property> </bean> <!-- Cron Trigger, run every 5 seconds --> //配置觸發器,有兩種方式,這是我喜歡的一種方式 <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> //name="jobDetail"一樣的name的值不可以隨意改變, ref的值是注冊的job的名字 <property name="jobDetail" ref="quartzJob" /> //配置的時間規則,每五秒鐘跑一次任務 <property name="cronExpression" value="0/5 * * * * ?" /> </bean> //配置調度工廠 <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <!-- <property name="jobDetails"> <list> <ref bean="runMeJob" /> </list> </property> --> //name的值同樣不要更改,把觸發器的名字配置上 <property name="triggers"> <list> <ref bean="cronTrigger" /> </list> </property> </bean>
</beans> 4.測試類 public class QuartzTestRun { public static void main(String [] args){ new ClassPathXmlApplicationContext("Spring-Quartz.xml"); } }</pre>
本文由用戶 eex2 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!