spring定时任务(二)

来源:互联网 发布:mac中qq截图快捷键 编辑:程序博客网 时间:2024/06/07 05:33

spring定时任务(一)是原始的实现job接口的方式,另外spring本身集成了quartz,我们使用的时候其配置文件和原始的实现job接口的方式差不多。

在(一)的基础上实例如下:

1.task.xml

<!-- 要调用的工作类 -->

<bean id="quartzJob"class="com.daibang.dbreport.finance.controller.TimeTaskTest"></bean>

<!-- 定义调用对象和调用对象的方法 -->

<bean id="jobtask"

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

<!-- 调用的类 -->

<property name="targetObject">

<ref bean="quartzJob" />

</property>

<!-- 调用类中的方法 -->

<property name="targetMethod">

<value>work</value>

</property>

</bean>

<!-- 定义触发时间 -->

<bean id="doTime"

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

<property name="jobDetail">

<ref bean="jobtask" />

</property>

<!-- cron表达式 每分钟调用一次0 */1 * * * ?-->

<propertyname="cronExpression">

<value>0 58 22 * *?</value>

</property>

</bean>

<!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序-->

<bean id="startQuertz" lazy-init="false"

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

<property name="triggers">

<list>

<ref bean="doTime" />

</list>

</property>

</bean>

2.TimeTaskTest.java

@Controller
public class TimeTaskTest {

@Resource
private QuartzUse quartzUse;

public void work() {
System.out.println("定时任务开始");
quartzUse.getBusinessInfo();

}

}

0 0
原创粉丝点击