第3部分3.6定時(shí)任務(wù)接口_第1頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、作用:客戶開發(fā)可以利用計(jì)劃任務(wù)接口定時(shí)執(zhí)行一段自己定義的操作,比如在兩個(gè)數(shù)據(jù)源之間交換數(shù)據(jù)。Ecology 提供兩種計(jì)劃任務(wù)接口:1.2.ervalJob 接口,此接口每隔一段時(shí)間執(zhí)行一次(自己定義間隔時(shí)間)CronJob 接口,此接口在指定的時(shí)間點(diǎn)執(zhí)行(自己定義時(shí)間點(diǎn))定義計(jì)劃任務(wù)的方法是在ecology 安裝目錄/WEB-INF/servichedule.xml 中:上面的定義了一個(gè)名為job1 的ervalJob,該接口中的方法 execute()將會(huì)每 60 秒執(zhí)行一次。同時(shí)把前面定義的 local 數(shù)據(jù)源注入到了接口中,這樣的話就可以在execute()中讀寫 local 數(shù)據(jù)源???/p>

2、以注入兩個(gè)數(shù)據(jù)源到接口中,這樣就可以在兩個(gè)數(shù)據(jù)源之間交換數(shù)據(jù):也一個(gè)CronJob 的方法和ervalJob 類似,在ecology 安裝目錄/WEB-INF/servi:chedule.xml中上面的定。定義了一個(gè)周一到周五 12:44 執(zhí)行的計(jì)劃任務(wù)。什么時(shí)候執(zhí)行計(jì)劃任務(wù)由 cronExpr 表達(dá)式?jīng)Q一個(gè)cron 表達(dá)式有至少 6 個(gè)有空格分隔的時(shí)間元素,按順序依次為:秒(059)分鐘(059)小時(shí)(023)天(月)(031,但是你需要考慮你月的天數(shù))月(011)天()(17 1=SUN 或 SUN,MON,TUE,WED,THU,F(xiàn)RI,SAT)0 0 10,14,16 * * ? 每天

3、上午 10 點(diǎn),下午 2 點(diǎn),4 點(diǎn)0 0/30 9-17 * * ?朝九晚五工作時(shí)間內(nèi)每0 0 12 ? * WED 表示每個(gè)三中午 12 點(diǎn)0 0 12 * * ? 每天中午 12 點(diǎn)觸發(fā)0 15 10 ? * * 每天上午 10:15 觸發(fā)0 15 10 * * ? 每天上午 10:15 觸發(fā)0 * 14 * * ? 在每天下午 2 點(diǎn)到下午 2:59 期間的每 1 分鐘觸發(fā)0 0/5 14 * * ? 在每天下午 2 點(diǎn)到下午 2:55 期間的每 5 分鐘觸發(fā)0 0/5 14,18 * * 在每天下午 2 點(diǎn)到 2:55 期間和下午 6 點(diǎn)到 6:55 期間的每 5 分鐘觸發(fā)0 0-5

4、 14 * * ? 在每天下午 2 點(diǎn)到下午 2:05 期間的每 1 分鐘觸發(fā)0 10,44 14 ? 3 WED 每年三月的三的下午 2:10 和 2:44 觸發(fā)0 15 10 ? * MON-FRI 周一至周五的上午 10:15 觸發(fā)0 15 10 15 * ? 每月 15 日上午 10:15 觸發(fā)0 15 10 L * ? 每月最后一日的上午 10:15 觸發(fā)0 15 10 ? * 6L 每月的最后一個(gè)0 15 10 ? * 6#3 每月的第三個(gè)五上午 10:15 觸發(fā)五上午 10:15 觸發(fā)有些子表達(dá)式能包含一些范圍或列表例如:子表達(dá)式(天()可以為 “MON-FRI”,“MON,WE

5、D,F(xiàn)RI”,“MON-WED,SAT”“*”字符代表所有可能的值因此,“*”在子表達(dá)式(月)里表示每個(gè)月的含義,“*”在子表達(dá)式(天( “/”字符用來指定數(shù)值的增量例如:在子表達(dá)式(分鐘)里的“0/15”表示從第 0 分鐘開始,每 15 分鐘)表示的每一天在子表達(dá)式(分鐘)里的“3/20”表示從第 3 分鐘開始,每 20 分鐘(它和“3,23,43”)的含義一樣“?”字符僅被用于天(月)和天()兩個(gè)子表達(dá)式,表示不指定值當(dāng) 2 個(gè)子表達(dá)式其中之一被指定了值以后,為了避免,需要將另一個(gè)子表達(dá)式的值設(shè)為“?”注意,上文中的weaver.erfa.scheduaseervalJob 和weaver

6、.erfa.scheduaseervalJob 是ecology 提供的默認(rèn)接口實(shí)現(xiàn),它們的execute()是空的,如果要使用計(jì)劃任務(wù)接口的話,必需繼承不做任何操作??蛻糸_發(fā)weaver.erfa.scheduaseervalJob 或weaver.erfa.scheduaseervalJob,用自己的業(yè)務(wù)邏輯覆蓋它們的execute().舉個(gè)簡(jiǎn)單的例子,我需要ecology 系統(tǒng)每隔一小時(shí)統(tǒng)計(jì)一下系統(tǒng)人數(shù)并輸出到控制臺(tái),步驟如下1 編寫自己的計(jì)劃任務(wù)實(shí)現(xiàn)import weaver.erfa.scheduaseervalJob;import java.sql.Connection;impor

7、t java.sql.PreparedSement; import java.sql.ResultSet;/*ervalJob 示范代碼,集成BaseervalJob,用自己的業(yè)務(wù)邏輯覆蓋了execute()方法*/public class MyervalJob extends BaseervalJob public void execute() /從數(shù)據(jù)源中獲取連接Connection conn = getDs().getConnection(); try /通過 jdbc 獲取人數(shù)PreparedSement s = conn.prepareSement(select count(*) as amount from hrmresource);ResultSet rs = s.executeQuery(); rs.next();String amount = rs.getString(amount);/輸出到控制臺(tái)System.out.prln(人數(shù): + amount);/關(guān)閉 rs.close();集/關(guān)閉 sement s.close(); catch (Exception e) getLog().erro

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論