项目所用技术回顾之定时任务(基于spring quartz)
2014-08-11 10:23
441 查看
Quartz是一个强大的企业级任务调度框架,Spring中继承并简化了Quartz,下面就看看在Spring中怎样配置Quartz:
首先我们来写一个被调度的类:
public class EcApproveMailJob {
private FreeMarkerConfigurer freeMarkerConfigurer;
public void resendMail(){
try{
<span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">System.out.println(</span><span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">"</span><span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">Quartz的任务调度!!!</span><span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">"</span><span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">);</span>
}catch(Exception e){
e.printStackTrace();
}
}
public FreeMarkerConfigurer getFreeMarkerConfigurer() {
return freeMarkerConfigurer;
}
public void setFreeMarkerConfigurer(FreeMarkerConfigurer freeMarkerConfigurer) {
this.freeMarkerConfigurer = freeMarkerConfigurer;
}
}
Spring的配置文件:
首先我们来写一个被调度的类:
public class EcApproveMailJob {
private FreeMarkerConfigurer freeMarkerConfigurer;
public void resendMail(){
try{
<span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">System.out.println(</span><span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">"</span><span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">Quartz的任务调度!!!</span><span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">"</span><span style="margin: 0px; padding: 0px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 23px;">);</span>
}catch(Exception e){
e.printStackTrace();
}
}
public FreeMarkerConfigurer getFreeMarkerConfigurer() {
return freeMarkerConfigurer;
}
public void setFreeMarkerConfigurer(FreeMarkerConfigurer freeMarkerConfigurer) {
this.freeMarkerConfigurer = freeMarkerConfigurer;
}
}
Spring的配置文件:
<?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:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd" default-lazy-init="false" default-autowire="no"> <bean id="sfb" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref local="ctb1" /> </list> </property> </bean> <bean id="ctb1" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail"> <ref bean="mijfb1" /> </property> <property name="cronExpression"> <value>00 02 9 * * ?</value> </property> </bean> <bean id="mijfb1" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject"> <ref bean="ecApproveMailJob" /> </property> <property name="targetMethod"> <value>resendMail</value> </property> </bean> <bean id="mijfb2" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject"> <ref bean="ecClaimConsistencyJob"/> </property> <property name="targetMethod"> <value>consistencyMailSend</value> </property> </bean> <bean id="ecApproveMailJob" class="com.sinosoft.costmcs.quartz.EcApproveMailJob" > <span style="white-space:pre"> </span><property name="freeMarkerConfigurer"> <span style="white-space:pre"> </span><ref bean="freeMarkerConfigurer"/> <span style="white-space:pre"> </span></property> </bean> </beans>
相关文章推荐
- spring定时任务之quartz基于xml开发
- 基于spring+quartz的分布式定时任务框架实现
- 基于spring+quartz的分布式定时任务框架
- 基于spring+quartz的分布式定时任务框架
- Spring 3整合Quartz 1实现定时任务一:常规整合(基于maven构建)
- Spring 3整合Quartz 2实现定时任务一:常规整合 (基于maven构建)
- Spring 3整合Quartz 2实现定时任务一:常规整合 (基于maven构建)
- Spring整合Quartz实现定时任务的时间更新,暂停和启用(不需要重启项目并且配置多数据源)
- 基于Spring的多数据源(Druid)定时任务项目开发(一)<带Demo>
- 【JAVA秒会技术之搞定Quartz定时任务】Quartz在Spring中的集成与应用
- Spring web项目使用Quartz定时任务
- 基于spring的quartz定时任务的配置详述
- 万物生长 项目jar包越少越好,不然会导致eclipse进入断点延迟高,很慢. Spring+quartz 实现定时任务job集群配置
- 基于spring+quartz的分布式定时任务框架
- 项目所用技术回顾之excel导入(基于poi)
- 项目所用技术回顾之excel导出(基于poi)
- spring整合Quartz定时器(二)---基于@Scheduled注解执行定时任务
- 搭建第一个web项目:quartz+spring实现定时任务
- Quartz在Spring中动态设置cronExpression (spring设置动态定时任务)
- spring实现定时任务之Quartz 3