Quartz与Spring集成的两种方法示例

Quartz与Spring集成方式:

1.MethodInvokeJobDetailFactoryBean

2.JobDetailBean

下面分别介绍这两种方式。

1.MethodInvokeJobDetailFactoryBean

1)创建一个Job类,此类不需要实现任何接口,不需要继承任何类

public class MyJobTest {
    public void execute(){
        System.out.println("正在执行quartz任务的一个方法。。。");
    }
}

2)配置XML


    
    
    
    
        
        
        
        
    
    
    
        
        
        
        
        
    
    
    
        
        
        
    
    
    
        
            
        
    

2.JobDetailBean

1)需要继承QuartzJobBean类或者实现Job方法

public class MyJobBeanTest extends QuartzJobBean {
    @Override
    protected void executeInternal(JobExecutionContext context) throws JobExecutionException {
        System.out.println("测试Quartz:Hello Quartz");
    }
}

2)配置XML


    
    
        
        
    
    
        
        
        
    
    
        
        
    
    
    
        
        
            
                
            
        
    

3.两种集成方式的简单说明

1)使用MethodInvokeJobDetailFactoryBean则需要指定targetObject(任务实例)和targetMethod(实例中要执行的方法)

2)使用QuartzJobBean,需要继承。

前者优点是无侵入,业务逻辑简单,一目了然,缺点是无法持久化。

从我使用的经验来说,我更推荐的第二种,其中一个很重要的原因就是因为定时任务中注入相关Service的时候,后者可以直接注入,而前者还需要进行Scheduler的替换修改。

以上就是Quartz与Spring集成的两种方法示例的详细内容,更多关于Quartz与Spring集成方法的资料请关注脚本之家其它相关文章!

你可能感兴趣的:(Quartz与Spring集成的两种方法示例)