java中如何实现Job Scheduing

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中如何实现Job Scheduing相关的知识,希望对你有一定的参考价值。

java中如何实现Job Scheduing最好有例子。

例如:

/**
* @author kevin zhou
*
* 在Java中实现Job Scheduling
* 创建日期 2004-7-13
*/
import java.util.TimerTask;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;

public class ReportGenerator extends TimerTask

   /* (非 Javadoc)
    * @see java.util.TimerTask#run()
    */
   public void run()
       System.out.println("Generating report");




class MainApplication

 public static void main(String[] args)
   Timer timer=new Timer();
   Calendar date = Calendar.getInstance();
   date.set(
     Calendar.DAY_OF_WEEK,
     Calendar.SUNDAY
   );
   date.set(Calendar.HOUR, 0);
   date.set(Calendar.MINUTE, 0);
   date.set(Calendar.SECOND, 0);
   date.set(Calendar.MILLISECOND, 0);
   // Schedule to run every Sunday in midnight
   timer.schedule(
     new ReportGenerator(),
     date.getTime(),
     1000 * 60 * 60 * 24 * 7
   );
 

此处简单解释一下,在此例子中ReportGenerator继承java.util.TimerTask,它又继承了java.lang.Runnable,我们需要覆盖run()方法。
调用时用schedule()方法让它每周日0点0分执行,避开服务器高峰,实现Job Scheduling的目的。

补充:Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

参考技术A /**
* @author kevin zhou
*
* 在Java中实现Job Scheduling
* 创建日期 2004-7-13
*/
import java.util.TimerTask;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;

public class ReportGenerator extends TimerTask

/* (非 Javadoc)
* @see java.util.TimerTask#run()
*/
public void run()
System.out.println("Generating report");




class MainApplication

public static void main(String[] args)
Timer timer=new Timer();
Calendar date = Calendar.getInstance();
date.set(
Calendar.DAY_OF_WEEK,
Calendar.SUNDAY
);
date.set(Calendar.HOUR, 0);
date.set(Calendar.MINUTE, 0);
date.set(Calendar.SECOND, 0);
date.set(Calendar.MILLISECOND, 0);
// Schedule to run every Sunday in midnight
timer.schedule(
new ReportGenerator(),
date.getTime(),
1000 * 60 * 60 * 24 * 7
);


我先简单解释一下,在我们的例子中ReportGenerator继承java.util.TimerTask,它又继承了java.lang.Runnable,我们需要覆盖run()方法。
调用时我们用schedule()方法让它每周日0点0分执行,避开服务器高峰,实现Job Scheduling的目的。

以上是关于java中如何实现Job Scheduing的主要内容,如果未能解决你的问题,请参考以下文章

如何理解Java的值传递

Quartz与Spring集成 Job如何自动注入Spring容器托管的对象

oracle中如何创建一个job

大数据外出实训报告9

Java中如何实现文件预览的功能

分布式任务调度框架选型,如何选择一个合适的框架?