您的位置:首页 > 编程语言 > Java开发

整合spring与quartz的任务调用

2013-09-09 00:00 288 查看
第一种:调用某个类里面的方法

applicationContext.xml

<!-- 定义要调用的任务的实现类 -->

<beanid="testQuartz"class="crm.action.Test">

</bean>

<!--调用实现类里面的某个方法 -->

<beanid="testTellTime"

class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">

<propertyname="targetObject">

<refbean="testQuartz"/>

</property>

<propertyname="targetMethod">

<value>tellTime</value>

</property>

</bean>

<!--定义调用任务的时间 -->

<beanid="testSayTrigger"class="org.springframework.scheduling.quartz.CronTriggerBean">

<propertyname="jobDetail">

<refbean="testTellTime"/>

</property>

<propertyname="cronExpression">

<value>0/15 * * * * ?</value>

</property>

</bean>

<!--管理触发器 -->

<beanclass="org.springframework.scheduling.quartz.SchedulerFactoryBean">

<propertyname="triggers">

<list>

<reflocal="testSayTrigger"/>

</list>

</property>

</bean>

Test.java

import java.text.SimpleDateFormat;

import java.util.Date;

public class Test {

public void tellTime(){

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date now = new Date();

String ly_time = sdf.format(now);

System.out.println(ly_time+"\n");

}

}

种:继承QuartzJobBean

<beanname="testQuartz"class="org.springframework.scheduling.quartz.JobDetailBean">

<propertyname="jobClass">

<value>crm.action.Test</value>

</property>

<propertyname="jobDataAsMap">

<map>

<!-- spring 的依赖注入 -->

<entrykey="crmcontactservice"><reflocal="crmcontactservice"/></entry>

</map>

</property>

</bean>

<!--定义调用的任务的时间 -->

<beanid="testHelloTrigger"class="org.springframework.scheduling.quartz.CronTriggerBean">

<propertyname="jobDetail">

<refbean="testQuartz"/>

</property>

<propertyname="cronExpression">

<value>0/10 * * * * ?</value>

</property>

</bean>

<!-- 触发器的管理-->

<beanclass="org.springframework.scheduling.quartz.SchedulerFactoryBean">

<propertyname="triggers">

<list>

<reflocal="testHelloTrigger"/>

</list>

</property>

</bean>

Test.java

import java.text.SimpleDateFormat;

import java.util.Date;

import org.quartz.JobExecutionContext;

import org.quartz.JobExecutionException;

import org.springframework.scheduling.quartz.QuartzJobBean;

import crm.service.CrmContactservice;

public class Test extends QuartzJobBean{

private CrmContactservice crmcontactservice;

protected void executeInternal(JobExecutionContext arg0)

throws JobExecutionException {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date now = new Date();

String ly_time = sdf.format(now);

System.out.println(ly_time+"\n");

}

public CrmContactservice getCrmcontactservice() {

return crmcontactservice;

}

public void setCrmcontactservice(CrmContactservice crmcontactservice) {

this.crmcontactservice = crmcontactservice;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息