`
yjhexy
  • 浏览: 327794 次
  • 性别: Icon_minigender_1
  • 来自: 火星
社区版块
存档分类
最新评论

Quartz 学习第一课

阅读更多

最近想研究下JAVA中的定时任务,看到 spring 也是支持这个的,所以学习了下。

第一步,生成基本目录

mvn archetype:generate (这里选择15 生成一些基本的目录)


第二步,编辑pom.xml如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.yajun</groupId>
	<artifactId>springScheduling</artifactId>
	<packaging>jar</packaging>
	<version>1.0-SNAPSHOT</version>
	<name>springScheduling</name>
	<url>http://maven.apache.org</url>
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring</artifactId>
			<version>2.0</version>
			<scope>complie</scope>
		</dependency>
		<dependency>
			<groupId>opensymphony</groupId>
			<artifactId>quartz</artifactId>
			<version>1.6.1</version>
			<scope>complie</scope>
		</dependency>
		<dependency>
			<groupId>javax.transaction</groupId>
			<artifactId>jta</artifactId>
			<version>1.1</version>
			<scope>complie</scope>
		</dependency>
		<dependency>
			<groupId>commons-collections</groupId>
			<artifactId>commons-collections</artifactId>
			<version>3.2.1</version>
			<scope>complie</scope>
		</dependency>
	</dependencies>
</project>

 

第三步,mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true

导入eclipse。



第四步,建立类

 

package com.yajun.quartz;

import java.util.Date;

import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.SchedulerFactory;
import org.quartz.Trigger;
import org.quartz.TriggerUtils;

import com.yajun.quartz.bussines.DumbJob;

/**
 * 一个简单的定时任务
 * 
 * @author yajun
 * 
 */
public class QuartzDemo1 {
	public static void main(String[] args) throws SchedulerException {
		// 获取调度
		SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory();
		Scheduler sched = schedFact.getScheduler();
		sched.start();

		// 每分钟执行的触发器
		Trigger trigger = TriggerUtils.makeMinutelyTrigger();

		// 从当前时间开始
		trigger.setStartTime(new Date());

		// 触发器名称
		trigger.setName("myTrigger");

		// 构建具体执行的任务
		JobDetail jobDetail = new JobDetail("myJob", null, DumbJob.class);

		// 触发器进入调度
		sched.scheduleJob(jobDetail, trigger);
	}
}

 

第五步,建立类

 

package com.yajun.quartz.bussines;

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

public class DumbJob implements Job {

	public void execute(JobExecutionContext arg0) throws JobExecutionException {
		System.out.println("保护大自然");
	}

}

 

第六步,运行QuartzDemo1类进行测试

 

一个灰常简单的任务调度类就这么完成了。明天进行第二课学习把。

今天比较累了。呵呵。

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics