springboot配置定时任务

如有需要可以加我Q群【308742428】大家一起讨论技术,提供技术支持。

后面会不定时为大家更新文章,敬请期待。

话不多说直接上代码:

1.在启动类加注解

@EnableScheduling
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@SpringBootApplication
@EnableScheduling
public class Application extends SpringBootServletInitializer {
     
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
     
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        this.setRegisterErrorPageFilter(false); // 错误页面有容器来处理,而不是SpringBoot
        return builder.sources(Application.class);
    }
     
}

2.新建定时任务类-对应的业务逻辑根据自己的需求来这里我只是做测试

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
@Component
public class UserTask {
    @Autowired
    private ZrUserService zrUserService;
    @Scheduled(cron = "0 15 0 * * ?")
    public void testSchedule(){
        System.out.println("开启定时任务------------------------------------");
        ZrUser zrUser=new ZrUser();
        List<ZrUser> list = zrUserService.findList(zrUser);
        //当前时间
        Date date=new Date();
        for (int i=0;i<list.size();i++){
            if (!"1".equals(list.get(i).getStatus())){
                Date freezeDueTime = list.get(i).getFreezeDueTime();
                int s = date.compareTo(freezeDueTime);
                //当前时间小于冻结到期时间-解冻
                if (s<0){
                    ZrUser zrUser1 = list.get(i);
                    zrUser1.setStatus("1");
                    zrUser1.setFreezeDueTime(new Date());
                    zrUserService.update(zrUser1);
                    System.out.println(s);
                }
            }
        }
    }
}

启动项目就会跑定时任务了。  

  

posted @   dsn727455218  阅读(402)  评论(0编辑  收藏  举报
编辑推荐:
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
阅读排行:
· 为DeepSeek添加本地知识库
· 精选4款基于.NET开源、功能强大的通讯调试工具
· DeepSeek智能编程
· 大模型工具KTransformer的安装
· [计算机/硬件/GPU] 显卡
点击右上角即可分享
微信分享提示