欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何配置Spring定時任務(wù)

今天就跟大家聊聊有關(guān)如何配置Spring定時任務(wù),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

在寬城等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營銷型網(wǎng)站,成都外貿(mào)網(wǎng)站建設(shè),寬城網(wǎng)站建設(shè)費用合理。

第一步,要知道Spring這個架構(gòu),很有趣很有意思。可以做到自由插拔功能模塊的效果。工程項目是基于MAVEN包依賴管理的,所以把這次需要的依賴包引用列出來:

<!-- 定時器依賴 開始 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.0.2.RELEASE</version>
</dependency>

 

<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
</dependency>
<!-- 定時器依賴 結(jié)束 -->

當然,這是要跟對應(yīng)的Spring的版本是要匹配的。我們這里的工程是4.0.2。前一個包spring-context-support,主要的作用是作為Spring與quartz的溝通管理的部件,如果注釋掉就會報這樣的錯誤

如何配置Spring定時任務(wù)

 在MAVEN配置完所需要添加的包之后(其他的包,這里暫時不擴展開說了,本文只討論在完整Spring工程項目下的配置),我們就可以開始動手給這個項目添加,定時任務(wù)的功能模塊了。

第二步,從web的項目的起源,web.xml 中改動做起。由于原本的項目Spring的配置文件是Spring-mvc.xml,我這里就把定時任務(wù)的配置文件改成了spring-time.xml。這樣就可以通過同一個掃描的配置在啟動的時候去讀取了。具體的代碼如下:

 <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:spring-*.xml</param-value>
  </context-param>

然后給大家看一下我的工程結(jié)構(gòu):

如何配置Spring定時任務(wù)

通過這樣的配置,項目就會知道怎么去調(diào)用了。實現(xiàn)了這一步接下來我們就可以繼續(xù)往下走了;

第三步,就是要完成spring-timer.xml這個定時任務(wù)的核心配置了。在這個文件配置中,我們主要是完成三件事情:

  1.配置啟動的設(shè)置,關(guān)于懶加載(簡單說一下,比如把某個變量初始化為null,也是一種懶加載,即在服務(wù)啟動之后,只有在實際被調(diào)用的時候才會實例化,否則是不會在內(nèi)存中存在的,只是邏輯上的。可以省空間,但是也可能會導(dǎo)致,問題延遲很久才會被發(fā)現(xiàn),此處不再詳細解說),以及觸發(fā)器的配置;

  2.quartz-2.x的配置,包含定時任務(wù)觸發(fā)之后要調(diào)用的job的名字,以及corn表達式(即定時表達式,控制程序在何時重復(fù)執(zhí)行的原因,本次在會在后續(xù)補充關(guān)于cron表達式的內(nèi)容);

  3.配置job的內(nèi)容和job對應(yīng)的具體的類。

好了邏輯流程解說完畢,上代碼:

<&#63;xml version="1.0" encoding="UTF-8"&#63;> 
<beans xmlns="http://www.springframework.org/schema/beans" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns:p="http://www.springframework.org/schema/p" 
  xsi:schemaLocation="http://www.springframework.org/schema/beans 
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> 
 
    <!-- 啟動觸發(fā)器的配置開始 --> 
  <bean name="startQuertz" lazy-init="false" autowire="no" 
    class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> 
    <property name="triggers"> 
      <list> 
        <ref bean="myJobTrigger" /> 
      </list> 
    </property> 
  </bean> 
  <!-- 啟動觸發(fā)器的配置結(jié)束 --> 
 
  <!-- 調(diào)度的配置開始 --> 
  <!-- 
    quartz-1.8以前的配置  
  <bean id="myJobTrigger" 
    class="org.springframework.scheduling.quartz.CronTriggerBean"> 
    <property name="jobDetail"> 
      <ref bean="myJobDetail" /> 
    </property> 
    <property name="cronExpression"> 
      <value>0/1 * * * * &#63;</value> 
    </property> 
  </bean> 
  --> 
  <!-- quartz-2.x的配置 --> 
  <bean id="myJobTrigger" 
    class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> 
    <property name="jobDetail"> 
      <ref bean="myJobDetail" /> 
    </property> 
    <property name="cronExpression"> 
    
    <value>0/10 * * * * &#63;</value>
     <!--  <value>1 52 * * * &#63;</value> --> 
    </property> 
  </bean> 
  <!-- 調(diào)度的配置結(jié)束 --> 
 
  <!-- job的配置開始 --> 
  <bean id="myJobDetail" 
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> 
    <property name="targetObject"> 
      <ref bean="myJob" /> 
    </property> 
    <property name="targetMethod"> 
      <value>work</value> 
    </property> 
  </bean> 
  <!-- job的配置結(jié)束 --> 
 
  <!-- 工作的bean --> 
  <bean id="myJob" class="com.tec.kevin.quartz.jobTest" /> 
 
</beans>

完成這里的配置文件配置之后,就可以開始下一步,具體的業(yè)務(wù)邏輯實現(xiàn)了;

第四步,具體業(yè)務(wù)邏輯實現(xiàn)。

這里要注意的是下圖中的兩個點

如何配置Spring定時任務(wù)

上圖是具體的業(yè)務(wù)實現(xiàn)的類,里面的名字和下圖定時任務(wù)配置的要相同。

完成上述之后,我們可以啟動項目看看實際效果了。

如何配置Spring定時任務(wù)

這里可以看到,定時任務(wù)按照我們之前在配置中的 <value>0/10 * * * * &#63;</value> 每10秒執(zhí)行一次 來運行了。

如何配置Spring定時任務(wù)

看完上述內(nèi)容,你們對如何配置Spring定時任務(wù)有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

網(wǎng)站名稱:如何配置Spring定時任務(wù)
本文鏈接:http://chinadenli.net/article8/gsjhip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化網(wǎng)站設(shè)計公司App設(shè)計網(wǎng)站制作網(wǎng)站導(dǎo)航網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化