SpringBoot学习(五)-定时任务
记录SpringBoot的学习,定时任务-2020年03月24日
定时任务执行的代码
注意:
@Component //加入到容器中
@EnableScheduling //定时任务或者周期任务的注解
@Scheduled(fixedDelay=ONE_Minute) //配置定时任务在执行完毕后多长时间再执行(示例中设置间隔60秒)
@Component
@EnableScheduling //定时任务或者周期任务的注解
public class TestJob {
@Autowired
private PushMapper pushMapper;
public final static long ONE_Minute = 60 * 1000;//60s执行一次
@Scheduled(fixedDelay=ONE_Minute)
public void getNameLimit2() {
try {
System.out.println("开始...");
List<Map<String, Object>> overtimeList=pushMapper.queryPushProblemOvertime(null);
System.out.println(overtimeList.get(0).toString());
}catch (Exception e){
e.printStackTrace();
}
System.out.println("结束...");
}
}
Dao层的mapper文件代码
注意:
@Mapper
@Repository // 将这个文件配置到Bean,不然定时任务会取不到数据库数据
@Mapper
@Repository
public interface PushMapper {
//查询未商定超时问题
List<Map<String,Object>> queryPushProblemOvertime(Map<String, Object> params);
}