當前位置:工程項目OA系統 > OA軟件研發(fā) > OA數據庫
接口用來用戶在泛普OA辦公軟件ThinkOne系統自由定義一些需要定時執(zhí)行的操作
自定義定時器
一. 接口說明
該接口用來用戶在泛普OA辦公軟件泛普OA系統系統自由定義一些需要定時執(zhí)行的操作,它是由Quartz這一個開源的作業(yè)調度框架來實現;
該接口通過配置調度時間和自行開發(fā)調度動作來實現需要定時執(zhí)行的任務。
該接口提供了兩種調度方式
IntervalJob接口,此接口每隔一段時間執(zhí)行一次(自己定義間隔時間)
CronJob接口,此接口在指定的時間點執(zhí)行(自己定義時間點)
在開發(fā)調度動作需要實現泛普OA辦公軟件泛普OA系統提供的自定義動作接口。
二. 實現方法&步驟
1. 配置調度文件schedule.xml(該文件位于泛普OA辦公軟件泛普OA系統的WEB-INF/service/目錄下)
<?xml version="1.0" encoding="GBK"?>
<module id="datasource" version="1.0.0">
<service-point id="job1" interface="OA.interfaces.schedule.IntervalJob">
<invoke-factory>
<construct class="MyIntervalJob ">
<set-service property="ds" service-id="datasource.dt1"/>
<set property="second" value="60"/>
</construct>
</invoke-factory>
</service-point>
<service-point id="job2" interface="OA.interfaces.schedule.CronJob">
<invoke-factory>
<construct class="MyCronJob ">
<set-service property="ds" service-id="datasource.dt2"/>
<set property="cronExpr" value="0 44 12 ? * MON-FRI"/>
</construct>
</invoke-factory>
</service-point>
上文中配置兩個調度任務job1,job2,實現了兩種調度策略,其中黑體部分是在配置每個調度時需要改變的內容;
注意:每次配置后需要重啟OA服務方可生效;
2. 屬性說明
Id:唯一標識該調度任務,無其他作用
service-id:上文定義的自定義數據源,如果任務執(zhí)行的動作中需要和數據源中的數據庫交付數據,需要設置該屬性
class:該任務真正執(zhí)行的操作,其中job1中MyIntervalJob必須繼承OA.interfaces.schedule.IntervalJob,job2中MyCronJob必須繼承OA.interfaces.schedule.CronJob;繼承后需要實現的方法是其中的execute();
value:任務執(zhí)行的頻率,在JOB1中表示沒60秒執(zhí)行一次,在JOB2中表示每周一到周五12:44執(zhí)行(JOB2的執(zhí)行頻率配置方式和一般LINUX操作系統的定時任務配置方式一致)
3. 在5.0及以上版本對于CronJob可以直接在進行可視化的配置
通過頂部菜單【設置中心】【外部接口設置】【配置計劃任務接口】即可進入配置界面
點擊右鍵【新建】即可創(chuàng)建一個新的【計劃任務】
注意:該配置,不需要重啟OA服務即可生效
4. 可視化配置屬性說明
計劃任務標識,即xml配置中的Id:唯一標識該調度任務,無其他作用
計劃任務類,即xml配置中的class:該任務真正執(zhí)行的操作,MyCronJo必須繼承OA.interfaces.schedule.CronJob;繼承后需要實現的方法是其中的execute();
定時時間,即xml配置中的value:任務執(zhí)行的頻率,表示每周一到周五12:44執(zhí)行(執(zhí)行頻率配置方式和一般LINUX操作系統的定時任務配置方式一致)
5. 如何實現任務執(zhí)行的操作
實現定時執(zhí)行的操作,實際上就是實現OA.interfaces.schedule.BaseIntervalJob 或者OA.interfaces.schedule.BaseCronJob中的execute()方法
import OA.interfaces.schedule.BaseIntervalJob;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
/**
* IntervalJob示范代碼,集成BaseIntervalJob,用自己的業(yè)務邏輯覆蓋了execute()方法,實際使用中這里可以編寫用戶需要實現的代碼
*/
public class MyIntervalJob extends BaseIntervalJob {
public void execute() {
//從數據源中獲取連接
Connection conn = getDs().getConnection(); //此處是取得上文定義的數據源dt1,如果需要操作其他系統的數據才需要該定義
try {
//通過jdbc獲取人數
PreparedStatement s = conn.prepareStatement("select count(*) as amount from hrmresource"); //此時假設在數據源dt1定義的數據庫中有hrmresource表
ResultSet rs = s.executeQuery();
rs.next();
String amount = rs.getString("amount");
//輸出到控制臺
System.out.println("人數:" + amount);
//關閉記錄集
rs.close();
//關閉statement
s.close();
} catch (Exception e) {
} finally {
try {
//關閉連接
conn.close();
} catch (Exception e) {
}
}
}
}
- 1OA辦公協同系統
- 2物業(yè)管理OA系統
- 3物流管理OA系統
- 4OA制度
- 5OA銷售
- 6好用的OA
- 7OA注冊
- 8OA集成
- 9辦公室OA
- 10OA辦公系統
- 11環(huán)保行業(yè)OA系統(ERP)
- 12醫(yī)藥行業(yè)ERP系統(OA)
- 1OA辦公管理軟件可提供移動加密鎖認證
- 2OA基二門戶平臺技術的業(yè)務協同管理平臺
- 3泛普OA辦公軟件系統知識管理數據庫設計實現大OA協同辦公
- 4實現OA辦公自動化系統的便捷化、集成化、現代化的功能
- 5泛普OA辦公系統文檔管理部分數據庫相關字段屬性的解釋
- 6哪里有免費的OA辦公軟件或者網絡版的源代碼?泛普門戶門戶接口說明
- 7OA如何關聯審批工作流的文檔狀態(tài)調整為正?;蛏顟B(tài)?
- 8泛普OA辦公軟件ThinkOne配置和異構系統的數據庫的鏈接方式
- 9泛普OA辦公軟件知識文檔部門的數據庫表是對相關字段的屬性的解釋
- 10OA可以用任何方式或編程語言來讀寫數據庫表
- 11OA系統數據讀取和回寫中間表實施
- 12泛普OA辦公軟件直接讀取異構系統的結構型數據自動生成審批流程
- 13泛普OA軟件主要數據結構-HR模塊
- 14OA辦公軟件的維護權限是怎樣實現的?
- 15辦公自動化系統(OA)的數據庫設計簡介
- 16oa辦公系統數據庫設計
- 17協同OA軟件記錄未被讀(表示還沒有觸發(fā)流程到OA)
- 18協同管理平臺規(guī)劃設計思路不原則
- 19為什么OA即時通訊只有內網能登錄,外網登錄不了?
- 20泛普OA辦公軟件ThinkOne系統的流程數據由表單組成,并取異構數據到流程表格
- 21協同軟件的信息化規(guī)劃的六化原則
- 22OA辦公軟件支持各種數據庫種類
- 23接口用來用戶在泛普OA辦公軟件ThinkOne系統自由定義一些需要定時執(zhí)行的操作
- 24OA軟件開發(fā)流程存儲數據說明
- 25ERP數據庫表單字段與OA軟件數據庫表單字段的關系
- 26OA辦公系統中數據庫客戶聯系日志提醒表
- 27協同OA軟件對數據加密安全是怎樣設計的?
- 28協同OA軟件中數據庫查詢和處理語句(二)
- 29協同OA軟件的中間表定義、存放位置
- 30泛普協同OA辦公系統實現流程與NC業(yè)務數據流轉過程中和異構系統數據交互