进入 timerTask 1:MonAug1722:02:37 CST 2020 Exception in thread "Timer-0"java.lang.ArithmeticException:/ by zero at com.example.MyTimerTask$1.run(MyTimerTask.java:21) at java.util.TimerThread.mainLoop(Timer.java:555) at java.util.TimerThread.run(Timer.java:505) Process finished withexit code 0
如果使用的是 Spring 或 Spring Boot 框架,可以直接使用 Spring Framework 自带的定时任务,使用上面两种定时任务的实现方式,很难实现设定了具体时间的定时任务,比如当我们需要每周五来执行某项任务时,但如果使用 Spring Task 就可轻松的实现此需求
以 Spring Boot 为例,实现定时任务只需两步:
开启定时任务
添加定时任务
开启定时任务
开启定时任务只需要在 Spring Boot 的启动类上声明 @EnableScheduling 即可,实现代码如下:
@SpringBootApplication @EnableScheduling// 开启定时任务 publicclassDemoApplication{// do someing }