關於spring的定時任務的相關配置不作相關的說明了,官方文檔寫的很清楚,網上也有不少不少人的配置詳解。但我以爲你下的哪一個版本的spring就按照那個相關的文檔去配置比較好一點。 web
其實糾結的不是spring定時任務,而是定時任務中要用到servletContext對象,由於項目中用到全文檢索,要在午夜時分幹一些事情。現總結兩種思路,以防忘記。但有一種在使用過程當中跑掛了,不明白,另外一種正在測試! spring
監聽器通常都用過吧。對,就是用監聽器完成初始化工做。當web服務器啓動後就給spring的定時任務中注入ServletContext對象。 服務器
在定時任務中會有這樣的屬性和方法: app
private static ServletContext application;set,get略! 測試
而後在監聽器contextInitialized(ServletContextEvent arg0)方法中使用set方法給servletContext對象賦值。這樣你就能夠在你的定時任務的方法中用servletContext對象了。 this
這種方法我建議使用:先看一下這個接口的註釋吧! spa
接口上的註釋: .net
Interface to be implemented by any object that wishes to be notified of the {@link ServletContext} (typically determined by the {@link WebApplicationContext}) that it runs in. 對象
方法上的註釋: 繼承
Set the {@link ServletContext} that this object runs in.我想這已經很明白了吧!只要繼承了這個接口在方法setServletContext(ServletContext servletContext);中就能夠獲得想要的serlvetContext對象。
即咱們不用在控制層用request來到servletContext對象了。在任何方法上只要實現了這個接口就能夠獲得servletContext對象是否是很方便!!