配置springmvc.xml
xmlns 多加下面的内容、
xmlns:task="http://www.springframework.org/schema/task"
然后xsi:schemaLocation多加下面的内容、
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task.xsd
最后是我们的task任务扫描注解
<task:annotation-driven/>
<!-- 自动扫描注解的bean -->
<context:component-scan base-package="com"/>
之前我们都是通过基于XML的方式实现Spring Quartz 虽然配置起来特别的方便,但是Spring还支持基本注解的方式来配置,这样做不仅更加简单,而且代码量也更加少了很多。
配置需要调度的类,并添加注解
package com.lifuyi.util;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
* 系统中的定时任务
*/
@Component //让Spring可以扫描到并初始化
public class TimingTask {
/* public TimingTask() {
System.out.println("类创建成功");
} */
/**
* 每隔10秒查询一次是否有消息
*/
@Scheduled(cron = "0/10 * * * * ?") //配置定时任务的执行时间
public void queryInfo() {
System.out.println("查询新消息 " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ").format(new Date()));
}
/**
* 每隔30分钟请求一次ERP系统
*/
@Scheduled(cron = "0 0/30 * * * ?") //配置定时任务的执行时间
public void RequestErp() {
System.out.println("请求ERP系统 " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ").format(new Date()));
}
/**
* 每隔5分钟查看是否在继续交流
*/
@Scheduled(cron = "0 0/5 * * * ?") //配置定时任务的执行时间
public void Dialogue() {
System.out.println("查看是否在继续交流 " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ").format(new Date()));
}
}