`

java 定时任务

    博客分类:
  • Java
阅读更多
1. 需要导入的包
   quartz-2.2.1.jar
   quartz-jobs-2.2.1.jar
   slf4j-api-1.6.6.jar
   slf4j-log4j12-1.6.6.jar
   log4j-1.2.8.jar
  
2. 写两个类(一定要写两个,没有public,它是访问不了的)
   public class TestJob implements Job {
	private Logger log = Logger.getLogger(TestJob.class);
	
	public void execute(JobExecutionContext jExeCtx)
			throws JobExecutionException {
		System.out.println("Job executed..."); 
	}
}

public class JobTest {

	public static void main(String[] args) throws SchedulerException {
		// specify the job' s details..
		JobDetail job = JobBuilder.newJob(TestJob.class)
				.withIdentity("testJob").build();
		// specify the running period of the job
		  Trigger trigger = TriggerBuilder  
	                .newTrigger()  
	                .withIdentity("testTrigger1", "group1")  
	                .withSchedule(CronScheduleBuilder.cronSchedule("0/4 * * * * ?"))  
	                .build();  
		// schedule the job
		SchedulerFactory schFactory = new StdSchedulerFactory();
		Scheduler sch = schFactory.getScheduler();
		sch.start();
		sch.scheduleJob(job, trigger);
	}
}


到了这一步,你还是运行不起来的,还需要加一个文件在里面,注意这个文件只能放在classpath目录下,即是src目录下。
log4j.properties

log4j.rootLogger=debug,sysout

# sysout log configuration
log4j.appender.sysout=org.apache.log4j.ConsoleAppender
log4j.appender.sysout.Target=System.out
log4j.appender.sysout.Threshold=debug
log4j.appender.sysout.layout=org.apache.log4j.PatternLayout
log4j.appender.sysout.layout.ConversionPattern=%d{dd.MM.yyyy HH:mm:ss} %5p (%F:%L) - %m%n

到这里,你就可以运行这个文件了。

如果在job中有sleep,它还是会按间隔的时间来运行的,这一点请注意。

注意一些符号的用途:
星号:表示任意时刻
问号:只能在日或周字段上使用
减号:范围,如 1-5秒
逗号:列表,如 1,5,10 秒
斜杠:等步长序列,如3/13秒 表示 3,16,29,42,55,3,16...


0 0 12 * * ?            每天12点触发
0 15 10 ? * *           每天10点15分触发
0 15 10 * * ?           每天10点15分触发
0 15 10 * * ? *         每天10点15分触发
0 15 10 * * ? 2005      2005年每天10点15分触发
0 * 14 * * ?            每天下午的 2点到2点59分每分触发
0 0/5 14 * * ?          每天下午的 2点到2点59分(整点开始,每隔5分触发)
0 0/5 14,18 * * ?       每天下午的 2点到2点59分(整点开始,每隔5分触发) 每天下午的 18点到18点59分(整点开始,每隔5分触发)
0 0-5 14 * * ?          每天下午的 2点到2点05分每分触发
0 10,44 14 ? 3 WED      3月分每周三下午的 2点10分和2点44分触发
0 15 10 ? * MON-FRI     从周一到周五每天上午的10点15分触发
0 15 10 15 * ?          每月15号上午10点15分触发
0 15 10 L * ?           每月最后一天的10点15分触发
0 15 10 ? * 6L          每月最后一周的星期五的10点15分触发
0 15 10 ? * 6L 2002-2005    从2002年到2005年每月最后一周的星期五的10点15分触发
0 15 10 ? * 6#3         每月的第三周的星期五开始触发
0 0 12 1/5 * ?          每月的第一个中午开始每隔5天触发一次
0 11 11 11 11 ?         每年的11月11号 11点11分触发(光棍节)

  
分享到:
评论

相关推荐

    java定时任务,每天定时执行任务

    Java 定时任务,每天定时执行任务 Java 定时任务是指在 Java 语言中实现的定时执行任务的机制,通过使用 Timer 和 TimerTask 两个类,可以实现定时执行任务的功能。在这个例子中,我们将实现每天定时执行任务的功能...

    java定时任务的实现方式

    Java定时任务的实现是软件开发中常见的需求,用于在特定时间执行特定的业务逻辑,例如数据备份、报表生成等。本文将详细介绍两种常用的Java定时任务实现方式:Timer类和Spring框架的Quartz调度器。 首先,第一种...

    Quartz--JAVA定时任务\Java应用:Java调度任务和Spring Quartz (1)

    Java定时任务是应用程序中不可或缺的一部分,它允许程序在特定时间执行特定操作,无需用户干预。在JDK 1.3及以后的版本中,`java.util.Timer`类提供了基础的定时任务支持。不过,`Timer`类的功能相对有限,无法精确...

    java定时任务调度

    Java定时任务调度是Java开发中常见的一种功能,用于在特定时间执行特定的任务,例如数据同步、日志清理、报表生成等。在Java中,有多种实现定时任务调度的方式,包括但不限于Java内置的`java.util.Timer`类、Spring...

    java定时任务小例子

    Java定时任务是编程中常见的一种需求,用于在特定时间或间隔执行特定的代码逻辑。在这个“java定时任务小例子”中,我们可以看到两个关键文件:`TimerTest.java`和`DoTask.java`,它们分别代表了定时器的任务调度和...

    java定时任务

    "java定时任务" java定时任务是指在java程序中,使用Timer和TimerTask来实现的定时执行任务的机制。java提供了多种方式来实现定时任务,包括使用java.util.Timer和java.util.TimerTask类、使用java.lang.Thread类的...

    java定时任务开源案例

    Java定时任务是软件开发中一个不可或缺的特性,它允许程序在特定时间执行预定的任务,而无需用户干预。在Java世界里,实现定时任务的方式多种多样,包括但不限于使用Java内置的`java.util.Timer`和`java.util....

    java 定时任务管理框架

    Java定时任务管理框架是开发中常见的一种工具,用于在特定时间执行特定任务,极大地提高了工作效率。Citic Scheduler作为这样一个框架,旨在简化Java项目中的定时任务管理。它提供了一个直观的用户界面,允许开发者...

    java 定时任务及jar包

    Java定时任务是Java编程中一个重要的特性,它允许开发者安排任务在特定的时间点或周期性地执行。在Java中,我们可以使用内置的`java.util.Timer`类和`java.util.concurrent.ScheduledExecutorService`来实现定时任务...

    java定时任务quartz的基本实现

    Java定时任务在软件开发中扮演着重要角色,它允许开发者安排任务在特定时间执行,而无需持续监控。Quartz是Java领域中一个广泛使用的开源任务调度框架,它提供了丰富的功能来满足各种定时任务的需求。本篇文章将深入...

    JAVA定时任务调度

    Java定时任务调度是Java开发中一个非常重要的技术领域,它允许开发者在特定的时间点或按照预定义的周期执行任务,从而实现自动化的工作流程。在Java中,我们可以使用多种方式来实现定时任务,如Java内置的`java.util...

    java定时任务器(含源码)

    用java写的任务定时器,设置想设的时间,选择可执行文件或者txt,word,时间一到便会自动运行。现在有源码。

    Java定时任务及其在工作流系统中的应用.pdf

    Java定时任务及其在工作流系统中的应用 Java定时任务是指在Java平台上执行定时任务的机制,以满足工作流系统中的需求。在工作流系统中,定时任务可以用于发送工作到期提醒邮件、自动执行任务、监控系统状态等。 ...

    java定时任务调度之Timer 简单示例

    Java定时任务调度是Java应用程序中常见的一种功能,用于在特定时间执行特定任务,例如定期备份、数据清理等。`Timer`类是Java中用于实现定时任务调度的一个基础工具,它位于`java.util`包中。在本文中,我们将深入...

    java 定时任务写法

    ### Java定时任务实现方法:Quartz API 的应用与实践 #### 一、Quartz API简介 Quartz 是一个开源项目,提供了丰富的调度功能,适用于各种Java应用中的定时任务需求。它由Michael Lipton(mwlipton@us.ibm.com)等...

Global site tag (gtag.js) - Google Analytics