Job:是一个接口只有一个方法void execute(JobExecutionContext context),开发者实现该接口定义运行任务,JobExecutionContext类提供了调度上下文的各种信息。Job运行时的信息保存在 JobDataMap实例中


第一种,作业类继承自特定的基  1.8测试成功,2.0不行类:org.springframework.scheduling.quartz.QuartzJobBean。

java类代码

package com.ncs.hj;  

import java.util.Date;

import org.quartz.JobExecutionContext;  
import org.quartz.JobExecutionException;  
import org.springframework.scheduling.quartz.QuartzJobBean;  

public class SpringQtz extends QuartzJobBean{  
    private static int counter = 0;  
    protected void executeInternal(JobExecutionContext context) throws JobExecutionException {  
         System.out.println(Thread.currentThread().getName());
        long ms = System.currentTimeMillis();  
        System.out.println( new Date(ms));  
        System.out.println(ms);  
        System.out.println("(" + counter++ + ")");  
        String s = (String) context.getMergedJobDataMap().get("service");  
        System.out.println(s);  
     
    }  
}


spring配置文件




    

   
   
          
        
          
         
                
                    simple is the beat
                
        
         
        

    
    
        
        
    

    
    
        
            
                
            
        
      

    




第二种,作业类不继承特定基类。1.8和2.0均测试成功, spring 4以上版本


java类

    package com.ncs.hj;  
      

      
    import java.util.Date;  
      
    public class SpringQtz2 {  
        private static int counter = 0;  
        protected void execute()  {  
            System.out.println(Thread.currentThread().getName());
            long ms = System.currentTimeMillis();  
            System.out.println( new Date(ms));  
            
            System.out.println("(" + counter++ + ")");  
        }  
    }



配置文件



    
  
      
        
     
        
        
        
        
        
        
        
        
            
                
             
                  
              
             
        
 
  
        
        
        
    
           
        
    
 
    
    
    
    
    
        
            
                
            
        
    
    
    
    

    



quartz默认是多线程的




定时任务的注解配置可参考这篇文章:

http://blog.csdn.net/xpsharp/article/details/8189212




参考文章:

http://my.oschina.net/u/559635/blog/389558

http://kevin19900306.iteye.com/blog/1397744

http://blog.csdn.net/huihuimimi17/article/details/8215779