Spring Boot实现简单的定时任务

前言

有时候在开发中经常会使用一些定时的任务,比如果整点推送,或者是每隔一段时间给客户发送一个消息等等。下面就来给大家介绍下Spring Boot实现简单的定时任务的相关内容。

创建定时任务类 每一分钟执行一次

@Component
@EnableScheduling
public class AllianceDiscountsActivityJob {
 @Autowired
 private AllianceDiscountsActivityService allianceDiscountsActivityService;

 // @Scheduled(cron = "0 0 0 * * ?")
 @Scheduled(cron = "0 */1 * * * ?")
 public void checkAllianceDiscounts()throws Exception{
  allianceDiscountsActivityService.checkAllianceDiscounts();
 }
}

创建service

public interface AllianceDiscountsActivityService {

 void checkAllianceDiscounts() throws Exception;
}

创建serviceImpl

 @Override
 public void checkAllianceDiscounts() throws Exception {
  int num=allianceDiscountsActivityMapper.checkAllianceDiscountActivity();
 }

之后创建mapper mapper mybatis-mapper 用来实现定时任务的方法

public interface AllianceDiscountsActivityMapper {
  int checkAllianceDiscountActivity();
}

 <update id="checkAllianceDiscountActivity" parameterType="java.lang.String">
 update alliance set status=3 WHERE start_time <![CDATA[<=]]> NOW() and is_del=0 and status=1;
 update alliance set status=2 WHERE end_time <![CDATA[<=]]> NOW() and is_del=0 and status=3;
 </update>

总结

到此这篇关于Spring Boot实现简单的定时任务的文章就介绍到这了,更多相关SpringBoot定时任务内容请搜索呐喊教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持呐喊教程!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。