新建一个Maven项目,添加依赖
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.8.9</version>
</dependency>
src下main下创建resources资源文件夹,在配置文件中添加命名空间
xmlns:task=http://www.springframework.org/schema/task
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task-3.0.xsd
配置定时任务驱动
<!-- 定时任务注解驱动 -->
<task:annotation-driven />
创建task包–>MyJob类,写代码之前先了解一下Cron表达式(https://www.cnblogs.com/javahr/p/8318728.html)
package com.shsxt.task;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class MyJob {
/**
* 定时任务什么时候执行
*/
@Scheduled(cron="0/2 * * * * ?") // 每两秒执行一次
public void job01(){
System.out.println("任务1...");
}
@Scheduled(cron="0/5 * * * * ?") // 每五秒执行一次
public void job02(){
System.out.println("任务2...");
}
}
创建单元测试
package com.shsxt.task;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import static org.junit.Assert.*;
public class MyJobTest {
public static void main(String[] args) {
new ClassPathXmlApplicationContext("spring.xml");
}
}
执行main方法,成功的配置了一个简单的定时任务