springboot配置定時任務

如有需要可以加我Q羣【308742428】大家一起討論技術,提供技術支持。

後面會不定時爲大家更新文章,敬請期待。

話不多說直接上代碼:

1.在啓動類加註解

@EnableScheduling
@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.新建定時任務類-對應的業務邏輯根據自己的需求來這裏我只是做測試

@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);
                }
            }
        }
    }
}

啓動項目就會跑定時任務了。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章