spring4 ssm整合quartz,单定时任务

这种配置方式,只适合在项目添加后台定时任务。

1.添加maven依赖


    
      org.quartz-scheduler
      quartz
      2.3.0
    

    
      org.quartz-scheduler
      quartz-jobs
      2.3.0
    

2.增加定时任务配置到spring-context.xml

	 
	

    
        
            
        
        
          
       		 
            execute
        
    

    
    
        
 		
        
    

    
    
        
        
        
            
                
            
        
    

JobFactory类

import org.quartz.spi.TriggerFiredBundle;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
import org.springframework.scheduling.quartz.AdaptableJobFactory;
import org.springframework.stereotype.Service;

@Service("jobFactory")
public class JobFactory extends AdaptableJobFactory {
    @Autowired
    private AutowireCapableBeanFactory autowireCapableBeanFactory;

    @Override
    protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception {
        Object  jobInstance=  super.createJobInstance(bundle);
        autowireCapableBeanFactory.autowireBean(jobInstance);
        return jobInstance;
    }
}

TimerTask类

import javax.annotation.Resource;
import java.util.List;

public class TimerTask {
    @Resource
    PersonService personService;
    public void execute() {
        List all = personService.getAll();
        System.out.println(all);
    }
}

将项目部署到服务器,启动就会执行。

你可能感兴趣的:(ssm定时任务)