最新軟件|熱門(mén)排行|軟件分類(lèi)|軟件專(zhuān)題|廠商大全

您的位置: 首頁(yè)編程開(kāi)發(fā)編程工具 → quartz all 1.8.5.jar

quartz all 1.8.5.jar

quartz all 1.8.5.jar 網(wǎng)友評(píng)分:8

同類(lèi)相關(guān)軟件

軟件介紹

軟件標(biāo)簽: quartzall 編程工具

quartz all 1.8.5.jar是一款非常好用的編程工具,功能強(qiáng)大,使用方便,有需要的朋友不要錯(cuò)過(guò)了,還等什么,快約上你的小伙伴,一起來(lái)綠色資源網(wǎng)下載使用!

軟件介紹

在數(shù)據(jù)庫(kù)中創(chuàng)建Quartz所需表(sql語(yǔ)句可以在quartz-1.8.5\docs\dbTables中找到,這里以oracle數(shù)據(jù)庫(kù)為例):

qrtz_blob_triggers,

qrtz_calendars,

qrtz_cron_triggers,

qrtz_fired_triggers,

qrtz_job_details,

qrtz_job_listeners,

qrtz_locks,

qrtz_paused_trigger_grps,

qrtz_scheduler_state,

qrtz_simple_triggers,

qrtz_triggers,

qrtz_trigger_listeners

軟件說(shuō)明

加入quartz 所需要的包:

放入jboss-4.2.3.GA\server\all\lib下

先把jboss自帶的quartz jar刪除掉。包括(quartz-ra.rar)都刪除掉。

commons-dbcp-1.3.jar

commons-pool-1.5.4.jar

jta-1.1.jar

log4j-1.2.14.jar

quartz-all-1.8.5.jar

slf4j-api-1.6.0.jar

slf4j-log4j12-1.6.0.jar

3.創(chuàng)建quartz-service.xml文件(放入jboss-4.2.3.GA\server\all\deploy下),文件內(nèi)容如下:

<?xml version="1.0" encoding="UTF-8"?>

<server>

<mbean code="org.quartz.ee.jmx.jboss.QuartzService"

name="user:service=QuartzService,name=QuartzService">

<attribute name="JndiName">Quartz</attribute>

<attribute name="StartScheduler">true</attribute>

<attribute name="Properties">

#============================================================================

# Configure Main Scheduler Properties

#============================================================================

#==========集群名稱(chēng),每個(gè)節(jié)點(diǎn)的名字都一樣===========

org.quartz.scheduler.instanceName = quartzjbossdemopartitionName

#==========集群每個(gè)節(jié)點(diǎn)ID=======

org.quartz.scheduler.instanceId = AUTO

#============================================================================

# Configure ThreadPool

#============================================================================

#=======線程====

org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool

org.quartz.threadPool.threadCount = 25

org.quartz.threadPool.threadPriority = 5

#============================================================================

# Configure JobStore

#============================================================================

org.quartz.jobStore.misfireThreshold = 60000

org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX

org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.oracle.OracleDelegate

org.quartz.jobStore.dataSource = QUARTZ

org.quartz.jobStore.tablePrefix = QRTZ_

org.quartz.jobStore.isClustered = true

org.quartz.jobStore.clusterCheckinInterval = 30000

#============================================================================

# Configure Datasources

#============================================================================

#=================數(shù)據(jù)庫(kù)寫(xiě)上自己的數(shù)據(jù)庫(kù)======

org.quartz.dataSource.QUARTZ.driver = oracle.jdbc.driver.OracleDriver

org.quartz.dataSource.QUARTZ.URL = jdbc:oracle:thin:@192.168.111.24:1521:db org.quartz.dataSource.QUARTZ.user = rootmq

org.quartz.dataSource.QUARTZ.password = rootmq

org.quartz.dataSource.QUARTZ.maxConnections = 5

org.quartz.dataSource.QUARTZ.validationQuery=select 0 from dual

</attribute>

</mbean>

</server>

4. java代碼

每一個(gè) Quartz Job 必須有一個(gè)實(shí)現(xiàn)了 org.quartz.Job 接口的具體類(lèi).

public class JbossJob implements Job {

public void execute(JobExecutionContext arg0) throws JobExecutionException {

System.out.println("hello jbossJob .....");

}

}

5. 具體調(diào)用

public class StartOrCloseScheduler implements Serializable{

/**

*

*/

private static final long serialVersionUID = -2266323478579408291L;

private static Logger myLogger = Logger.getLogger(StartOrCloseScheduler.class);

private static Scheduler sched = null;

/**

* 啟動(dòng)任務(wù)

* jobName: job名稱(chēng)

* jobGroupName: job組名稱(chēng)

* triggerName: trigger名稱(chēng)

* triggerGroupName:trigger組名稱(chēng)

*/

@SuppressWarnings("rawtypes")

public static void start(String jobName,String jobGroupName,

String triggerName,String triggerGroupName,

Class c, String str) {

try {

InitialContext ctx = new InitialContext();

sched = (Scheduler) ctx.lookup("Quartz");

System.out.println("Scheduler:" + sched);

} catch (NamingException e) {

e.printStackTrace();

}

JobDetail job = new JobDetail(jobName,jobGroupName, c);

System.out.println("JobDetail:" + job);

Trigger trigger = new CronTrigger(triggerName,triggerGroupName);

System.out.println("Trigger:" + trigger);

try {

((CronTrigger) trigger).setcronExpression(str);

sched.scheduleJob(job, trigger);

System.out.println("job:" + job);

sched.start();

} catch (Exception e) {

myLogger.error("開(kāi)啟一個(gè)任務(wù)"+jobName+e.getMessage());

e.printStackTrace();

}

}

/**

* 移除一個(gè)任務(wù)

* @param jobName: job名稱(chēng)

* @param jobGroupName: job組名稱(chēng)

* @param triggerName: trigger名稱(chēng)

* @param triggerGroupName: trigger組名稱(chēng)

* @throws SchedulerException

*/

public static void removeJob(String jobName,String jobGroupName,

String triggerName,String triggerGroupName) {

try {

InitialContext ctx = new InitialContext();

sched = (Scheduler) ctx.lookup("Quartz");

} catch (NamingException e) {

e.printStackTrace();

}

try {

//停止觸發(fā)器

sched.pauseTrigger(triggerName,triggerGroupName);

//移除觸發(fā)器

sched.unscheduleJob(triggerName,triggerGroupName);

//刪除任務(wù)

sched.deleteJob(jobName,jobGroupName);

} catch (SchedulerException e) {

myLogger.info("移除一個(gè)任務(wù)"+jobName+e.getMessage());

}

}

}

軟件截圖

下載地址 電腦版

點(diǎn)擊報(bào)錯(cuò) 軟件無(wú)法下載或下載后無(wú)法使用,請(qǐng)點(diǎn)擊報(bào)錯(cuò),謝謝!

用戶(hù)評(píng)論

熱門(mén)評(píng)論

最新評(píng)論

發(fā)表評(píng)論 查看所有評(píng)論(0)

昵稱(chēng):
請(qǐng)不要評(píng)論無(wú)意義或臟話,我們所有評(píng)論會(huì)有人工審核.
字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)