spring中使用註解啟動定時器
阿新 • • 發佈:2019-02-06
xmlns 加下面的內容
xmlns:task="http://www.springframework.org/schema/task"
然後xsi:schemaLocation
加下面的內容
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.2.xsd
最後是我們的task任務掃描註解
<!-- task任務掃描註解 --> <task:annotation-driven/>
我配置的掃描位置是
<context:component-scan base-package="com.wuzhut"></context:component-scan>
下面寫出一個測試類
package com.wuzhut.task; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @Component public class MyTask { @Scheduled(cron="0/5 * * * * ? ") //間隔5秒執行 public void taskCycle(){ System.out.println("無主題(www.wuzhuti.cn)專注於前端開發技術和程式開發研究的技術部落格"); } }
注意
需要注意的幾點:
1、spring的@Scheduled註解 需要寫在實現上、
2、 定時器的任務方法不能有返回值(如果有返回值,spring初始化的時候會告訴你有個錯誤、需要設定一個proxytargetclass的某個值為true、具體就去百度google吧)
3、實現類上要有元件的註解@Component
4、下面的文章連結是corn表示式、大家可以參考一下