springboot 相對於其餘而言,就是化繁爲簡,能用註解完成的,毫不用xml。html
定時器 也不例外!java
首先,在啓動類上打開 定時器的總開關spring
@SpringBootApplication //開啓緩存功能 @EnableCaching //定時器總開關 @EnableScheduling public class ShiroApplication { public static void main(String[] args) { SpringApplication.run(ShiroApplication.class, args); } }
而後在 定時任務 類加上 apache
@Component 和 @Scheduled(cron = "0 0/5 * * * ?") //表示每5分鐘執行一次
@Component public class Timer { @Autowired JedisPool jedisPool; @Scheduled(cron = "0 0/5 * * * ?") public void deleteFromCache() { Jedis jedis =null; jedis =jedisPool.getResource(); jedis.del("users::userCache"); System.err.println("users::userCache.從緩存中刪除."); System.out.println("執行了Timer,時間爲:" + new Date(System.currentTimeMillis())); } }
2018-08-09 09:14:36,865 DEBUG OrderedRequestContextFilter:104 - Cleared thread-bound request context: org.apache.catalina.connector.RequestFacade@4b251260 users::userCache.從緩存中刪除. 執行了Timer,時間爲:Thu Aug 09 09:15:00 CST 2018 users::userCache.從緩存中刪除. 執行了Timer,時間爲:Thu Aug 09 09:20:00 CST 2018 執行了Timer,時間爲:Thu Aug 09 09:25:00 CST 2018 users::userCache.從緩存中刪除. users::userCache.從緩存中刪除. 執行了Timer,時間爲:Thu Aug 09 09:30:00 CST 2018 執行了Timer,時間爲:Thu Aug 09 09:35:00 CST 2018 users::userCache.從緩存中刪除. 執行了Timer,時間爲:Thu Aug 09 09:40:00 CST 2018 users::userCache.從緩存中刪除.