1. 程式人生 > >Spring+Quartz 從資料庫中獲取定時任務和定時時間,動態實現對定時任務的增刪改查

Spring+Quartz 從資料庫中獲取定時任務和定時時間,動態實現對定時任務的增刪改查

本文轉載自部落格:http://blog.csdn.net/wwkms/article/details/48851005

----------------------------------------------------------------------------------------------------------------------------------

由於公司的新接得專案要實現一批資料的同步,通過外圍廠商提供的一系列各個系統的webervices介面定時將資料同步到我們開發的共享平臺上,由於廠商系統的資料是不斷在變化以及各系統閒忙時的特點,所以定時同步任務的執行必須在時間上能夠動態配置。因此,我們需要動態的從資料庫中獲取配置資訊,以改變各個定時間的執行規則,廢話不說了,上程式碼:(我利用的是ssh框架直接寫的,框架搭建不再敘述)

1.建立資料表(我用的是mysql)

[sql]  view plain  copy
  1. DROP TABLE IF EXISTS `t_wsdoc`;  
  2. CREATE TABLE `t_wsdoc` (  
  3.   `id` int(11) NOT NULL AUTO_INCREMENT,  
  4.   `triggername` varchar(50) NOT NULL,  
  5.   `jobdetailname` varchar(50) NOT NULL,  
  6.   `cronexpression` varchar(50) NOT NULL,  
  7.   `targetobject` varchar(50) NOT NULL
    ,  
  8.   `methodname` varchar(50) NOT NULL,  
  9.   `concurrent` char(10) NOT NULL DEFAULT '0',  
  10.   `state` char(10) NOT NULL DEFAULT '1',  
  11.   `isspringbean` char(10) NOT NULL DEFAULT '0',  
  12.   `readme` varchar(100) DEFAULT NULL,  
  13.   `reserved1` varchar(50) DEFAULT NULL,  
  14.   `reserved2` varchar(50) DEFAULT NULL,  
  15.   `reserved3` varchar(50) DEFAULT NULL,  
  16.   `reserved4` varchar(50) DEFAULT NULL,  
  17.   `reserved5` varchar(50) DEFAULT NULL,  
  18.   `reserved6` varchar(50) DEFAULT NULL,  
  19.   `reserved7` varchar(50) DEFAULT NULL,  
  20.   `reserved8` varchar(50) DEFAULT NULL,  
  21.   `reserved9` varchar(50) DEFAULT NULL,  
  22.   `reserved10` varchar(50) DEFAULT NULL,  
  23.   PRIMARY KEY (`id`)  
  24. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;  
[sql]  view plain  copy
  1. INSERT INTO `t_wsdoc` VALUES ('1''triggername''detailname''0/5 * * * * ?''com.framework.timer.ISCSynAllData''run''\'0\'''\'1\'''\'0\'''說明'nullnullnullnullnullnullnullnullnullnull);  

2.建立表對應的實體類

[java]  view plain  copy
  1. package ...自定義;  
  2.   
  3. import javax.persistence.Column;  
  4. import javax.persistence.Entity;  
  5. import javax.persistence.GeneratedValue;  
  6. import javax.persistence.GenerationType;  
  7. import javax.persistence.Id;  
  8. import javax.persistence.SequenceGenerator;  
  9. import javax.persistence.Table;  
  10.   
  11. import com.framework.model.AbstractEntity;  
  12.   
  13.   
  14. @Entity  
  15. @Table(name = "WSDOC", schema = "")  
  16. public class Wsdoc extends AbstractEntity{  
  17.   
  18.     /** 
  19.      *  
  20.      */  
  21.     private static final long serialVersionUID = 1L;  
  22.     private Long id;  
  23.     // 設定trigger名稱  
  24.     private String triggername;    
  25.     //設定表示式  
  26.     private String cronexpression;  
  27.     // 設定Job名稱  
  28.     private String jobdetailname;  
  29.     //任務類名  
  30.     private String targetobject;  
  31.     //類名對應的方法名  
  32.     private String methodname;  
  33.     //設定是否併發啟動任務 0是false 非0是true  
  34.     private String concurrent;  
  35.     // 如果計劃任務不存則為1 存在則為0  
  36.     private String state;  
  37.     private String readme;  
  38.     //是否是已經存在的springBean 1是  0 否  
  39.     private String isspringbean;  
  40.     /** 預留欄位1 */  
  41.     private String reserved1;  
  42.     /** 預留欄位2 */  
  43.     private String reserved2;  
  44.     /** 預留欄位3 */  
  45.     private String reserved3;  
  46.     /** 預留欄位4 */  
  47.     private String reserved4;  
  48.     /** 預留欄位5 */  
  49.     private String reserved5;  
  50.     /** 預留欄位6 */  
  51.     private String reserved6;  
  52.     /** 預留欄位7 */  
  53.     private String reserved7;  
  54.     /** 預留欄位8 */  
  55.     private String reserved8;  
  56.     /** 預留欄位9 */  
  57.     private String reserved9;  
  58.     /** 預留欄位10 */  
  59.     private String reserved10;  
  60.     // Constructors  
  61.   
  62.     /** default constructor */  
  63.     public Wsdoc() {  
  64.     }  
  65.   
  66.     /** full constructor */  
  67.     public Wsdoc(String triggername, String cronexpression,  
  68.             String jobdetailname, String targetobject, String methodname,  
  69.             String concurrent, String state, String readme,String isspringbean) {  
  70.         this.triggername = triggername;  
  71.         this.cronexpression = cronexpression;  
  72.         this.jobdetailname = jobdetailname;  
  73.         this.targetobject = targetobject;  
  74.         this.methodname = methodname;  
  75.         this.concurrent = concurrent;  
  76.         this.state = state;  
  77.         this.readme = readme;  
  78.         this.isspringbean=isspringbean;  
  79. 相關推薦

    Spring+Quartz 資料庫獲取定時任務定時時間動態實現定時任務刪改

    本文轉載自部落格:http://blog.csdn.net/wwkms/article/details/48851005 ----------------------------------------------------------------------------------------

    eclipse資料庫的建立資料庫表在介面上顯示以及實現資料表的刪改操作

    首先前期工作這裡就不講了,比如說資料庫的建立,MySql連線驅動等內容。介面主要內容:(1)執行出現第一個點選按鍵,點選後進入JTable資料繫結例項介面(2)接下來就可以進行相應操作。廢話不說,直接上效果圖。圖一 新增資料前圖二 新增資料後圖三 修改資料後圖四 刪除資料前圖

    1.簡單例項:ASP.NET下Echarts通過Ajax資料庫獲取資料

    後臺:Test01.ashx.cs:從資料庫獲取資料,通過HTTP請求(HttpContext)實現和前臺資料傳遞json資料 using System; using System.Collections.Generic; using System.Linq; using

    資料庫獲取的資料寫入到Excel表

    pom.xml檔案寫入程式碼,maven自動載入poi-3.1-beta2.jar <!-- https://mvnrepository.com/artifact/poi/poi --> <dependency>

    ASP.NET+Echarts+Ajax資料庫獲取資料

    html <div class="panel-body"> <div id="signNum" style="height: 400px; width:

    Jmeter-資料庫獲取資料並作為變數傳輸

    再今天重新學習,從資料庫中取資料,並作為變數傳到下一個請求中。 首先第一步要匯入mysql驅動包 一、新增JDBC Connection Configuration 設定連結 Database URL: jdbc:mysql:// 資料庫地址 /庫名 JDBC Driver class:com.my

    SQL injection 1: 如何資料庫獲取想要獲得的內容?

        由於我們的專案用到了資料庫,還有JSP頁面,因此先關注一些SQL injection等技術,以便找出應對的辦法。    以下是整理的網上的一些資料: 如何從資料庫中獲取想要獲得的內容? http://www.cz88.net/2004/7-6/164357.htm學習

    是用JDBC資料庫獲取資料並以java物件返回

    /** * * @param c * for example Person.class * @param primaryKeys * primaryKeys為主鍵,引數順序和表中保持一致 如果id, name

    php資料庫獲取資料用ajax傳送到前臺

    1、資料庫的欄位: 2、php連線資料庫獲取資料庫的資訊放入json_encode($css);{檔案為:db.php} <span style="font-size:14px;"><?php $host="localhost"; $username=

    spring原始碼(10)快取獲取到單例bean的後續操作(FactoryBean的處理)

    從快取中獲取到例項,doGetBean第一步就是對我們輸入的name做了處理。 去除FactoryBean的修飾符,也就是name=”&a”,最終處理為name=”a” 取指定別名最終所指向的beanName 在從快取中獲取例項時,getSi

    資料庫獲取今天的記錄最近一週的記錄

    條件where  to_days(addtime) = to_days(now()); 這裡要了解to_days()函式的意思。定一個日期,返回一個天數(年為0以來的天數)。 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= d

    資料庫獲取值填入下拉列表然後做二級關聯所產生的一系列問題

    今晚因為需要研究jquery動態繫結兩個下拉列表框,並且使兩個下拉列表框聯絡起來,所以做了下小例子 首先,建立了兩張表 每個表裡包含兩個欄位,一個id,一個名字 插入了一些資料,兩張表通過ID進行關聯,這是資料庫的做法 然後CS檔案中寫的程式碼如下:

    freemarker的DatabaseTemplateLoader資料庫獲取模板資訊

    import com.kingnet.xyzs.orm.dao.DmsMdTemplateConfigMapper; import com.kingnet.xyzs.orm.entity.DmsMdTemplateConfig; import freemarker.cach

    Java Web系統初始化時資料庫載入資料到文字(ibatisspring

    有一些特殊情況,需要在系統初始化時載入一些配置屬性到本地文字中 web.xml <listener> <listener-class> org.springfra

    layui進行分頁處理後端返回資料沒有count欄位需要單獨獲取再新增到資料再進行項渲染另有layui表格資料刪改前後端互動

    整體效果圖如下: (1)分頁前端介面處理 (2)分頁後端的資料處理 具體程式碼如下: 前端介面程式碼:包括分頁,增刪改查,重新整理(搜尋功能還沒做,後端是java程式碼) <!DOCTYPE html> <html> <hea

    C#sqlserver進行刪改操作(簡單易懂)

    uid 數據連接 net cti ade 密碼 logs where Go 1、添加引用using System.Data;using System.Data.SqlData;2、建立於數據庫的連接,建議將它做成一個方法,方便多次利用。string sqlconnectio

    ORACLE建立表、錶進行刪改的語法

    最近在學習ORACLE,現將在ORACLE中建立表、對錶進行增刪該查的語法總結如下: 表是一種資料庫物件,是基本的資料儲存單位,由行和列組成 表的建立(以課程資訊表為例): CREATE TABLE OBJECTS       

    在Django資料的刪改

    1.增加資料 1.Entry.objects.creat(屬性=值,屬性=值) 返回值: 插入成功:則返回建立好的實體物件 插入失敗:則返回None 2.建立一個save的物件,並通過save()進行儲存

    python 連線oracle資料庫錶進行刪改操作

    Python 建立連線oracle資料庫的三種方式: 方式一:使用者名稱、密碼和監聽分開寫 import cx_Oracle db=cx_Oracle.connect('username/[email protected]/orcl') db.close()

    資料庫錶的刪改

    ORM--物件關係對映建立表 from django.db import models<br> class Publisher(models.Model): name = models.CharField(max_length=30, verbose_name="名