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

Spring里MethodInvokingJobDetailFactoryBean定时任务的小示例

2017-08-31 11:29 726 查看
本人不才,写博客纯属为了做笔记,言语不恰当地方还望包涵。嘿嘿。
MethodInvokingJobDetailFactoryBean大概的意思就是根据方法名称去执行任务的一个工厂bean。


以下是代码:

springQuartz.xml

<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 定义目标bean和bean中的方法 -->
<bean id="SpringQtzJob_SendMailJob" class="cn.hr.esbjob.SendMailJob" />
<bean id="SpringQtzJobMethod_SendMailJob"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="concurrent"> <!--定时任务不会并行执行,默认是true-->
<value>false</value>
</property>
<property name="targetObject"><!--要执行的对象-->
<ref bean="SpringQtzJob_SendMailJob" />
</property>
<property name="targetMethod">  <!-- 要执行的方法名称 -->
<value>doJob</value>
</property>
</bean>
<!-- ================= 调度触发器 ======================== -->
<bean id="CronTriggerBean_SendMailJob" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="SpringQtzJobMethod_SendMailJob"></property>
<property name="cronExpression" value="0 0/1 * * * ?"></property><!--1分钟触发一次-->
</bean>
<!-- ======================== 调度工厂 ======================== -->
<bean id="SpringJobSchedulerFactoryBean"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="CronTriggerBean_SendMailJob" />
</list>
</property>
</bean>
</beans>


SendMailJob.java

public void doJob(){
// 业务处理逻辑
System.out.println("======定时任务=======");
}


然后将springQuartz.xml在spring主配置中引入即可。

效果图:



如有问题,请留言!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  定时任务
相关文章推荐