Spring时间调度

阅读更多
Java的Timer类和OpenSymphony的Quartz调度器是两个流行的调度API。Spring为这两个调度器提供了一个抽象层,可以更容易的使用他们


spring+timer

1 .使用java Timer调度任务
第一步 web.xml
 
    
        org.springframework.web.context.ContextLoaderListener
    
    
        contextConfigLocation
        
            /WEB-INF/classes/applicationContextTimeTask.xml
        
    

第二步  配置applicationContextTimeTask.xml







      
            
      



    
        
            
        
        
            10000
        
        
            5000
        
    


    

        
            
                
            
        
     
 

第三步 相关类的编写
EmailReportTask.java
 public class EmailReportTask extends TimerTask {//必需继承TimerTask
     Log log= LogFactory.getLog(EmailReportTask.class);
     public EmailReportTask() {
     }

     public void run() {//这个函数是调度任务执行的入口
        log.debug("task begin :"+testBean.greeting);
     }

     private TestBean testBean;//这里实现spring的依赖注入

     public void setTestBean(TestBean testBean) {
         this.testBean = testBean;
     }
 }

 testBean.java
 public class TestBean {
     public String greeting="hello,world";
 }

spring+Quartz
Quartz 作业调度框架所提供的 API 在两方面都表现极佳:既全面强大,又易于使用。Quartz 可以用于简单的作业触发,也可以用于复杂的 JDBC 持久的作业存储和执行。
第一步  同上
第二步  配置applicationContextTimeTask.xml




  
   com.photo.task.EmailReportTask2
  
  
   
    
     
    
   
  
 


 
  
   
  
  
   3600000
  
  
   86400000
  
 


 
  
   
  
  
   0/5 * * * * ?
  
 
 
  
   
    
   
  
 
 
 
第三步 相关类的编写
  
 EmailReportTask2.java
 public class EmailReportTask2 extends QuartzJobBean {
     Log log = LogFactory.getLog(EmailReportTask.class);

     public EmailReportTask2() {
     }
 //这个函数是调度任务执行的入口
     protected void executeInternal(JobExecutionContext jobExecutionContext) throws org.quartz.JobExecutionException {

         log.debug("task 2 begin :" + testBean.greeting);
     }


     private TestBean testBean;//这里实现spring的依赖注入

     public void setTestBean(TestBean testBean) {
         this.testBean = testBean;
     }
 }

你可能感兴趣的:(spring,quartz,java,xml,web,sun,框架,jdbc,bean)