Quartz 2 Job

07:44AM Okt 18, 2010 in category Java by Feby Fadiiellla

Hay hay !! ketemu lagi di postingan selanjutnya ,, dan masih berkecimpung di dunia QUARTZ(hHehhe) ..

Kali ini aku mau bahas tentang Quartz 2 Job ..

Quartz 2 job berarti , dalam sebuah aplikasi ada 2 job yang akan di jalankan dalam trigger yang berbeda ..

Cara pembuatan-nya hampir sama dengan quartz 1 job ,, bedanya ada di file Spring-Quartz.xml -nya ..

Di file Spring-Quartz.xml ditambahkan bean baru untuk mendefnisikan job kedua..

Berikut cara menambah-kan job pada quartz :

- As usual ,, buat class yang biasa-nya ku sebut RunMeJob yang kedua

Class RunMeJob udah aku jelasin isinya di posting pertama-ku ,, untuk syntax-nya tidak ada perubahan .. hanya tinggal ganti variabel aja..

- Kemudian buat class RunMeTask yang kedua

Class RunMeTask yang kedua inilah yang berisi tentang apa aja yang akan dilakukan , jika trigger kedua berjalan..

- And ,, the last one ,, edit source code di file Spring-Quartz.xml

Ini source code awal (quartz 1 job)..

<beans xmlns="http://www.springframework.

org/schema/beans"
xmlns:xsi="http://www.w3.org/2001

/XMLSchema-instance"
xsi:schemaLocation=

"http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/

spring-beans-2.5.xsd">

<bean id="runMeTask"

class="org.tehtarik.belajar.quartz.RunMeTask" />

<bean name="runMeJob" class="org.springframework.

scheduling.quartz.JobDetailBean">

<property name="jobClass" value="org.tehtarik.belajar.quartz.RunMeJob" />

<property name="jobDataAsMap">
<map>
<entry key="runMeTask" value-ref="runMeTask" />
</map>
</property>

</bean>

<!-- Cron Trigger -->
<bean id="cronTrigger" class="org.springframework.

scheduling.

quartz.CronTriggerBean">

<property name="jobDetail" ref="runMeJob" />
<property name="cronExpression" value="0/4 * * * * ?" />

</bean>

<bean class="org.springframework.scheduling.quartz.

SchedulerFactoryBean">
<property name="jobDetails">
<list>
<ref bean="runMeJob" />
</list>
</property>

<property name="triggers">
<list>
<ref bean="cronTrigger" />
</list>
</property>
</bean>

</beans>

 

kemudian tambahkan source code yang berwarna merah seperti di bawah ini...

<beans xmlns="http://www.springframework.

org/schema/beans"
xmlns:xsi="http://www.w3.org/2001

/XMLSchema-instance"
xsi:schemaLocation="http://www.

springframework.org/schema/beans
http://www.springframework.

org/schema/beans/

spring-beans-2.5.xsd">

<bean id="runMeTask"

class="org.tehtarik.belajar.

quartz.RunMeTask" />

<bean id="runMeTask2" class="org.tehtarik.belajar.quartz.

RunMeTask2" />

<bean name="runMeJob"

class="org.springframework

.scheduling.quartz.JobDetailBean">

<property name="jobClass"

value="org.tehtarik.belajar.quartz.RunMeJob" />

<property name="jobDataAsMap">
<map>
<entry key="runMeTask"

value-ref="runMeTask" />
</map>
</property>

</bean>

<bean name="runMeJob2" class="org.springframework.scheduling.

quartz.JobDetailBean">

<property name="jobClass"

value="org.tehtarik.

belajar.quartz.RunMeJob2"/>

<property name="jobDataAsMap">
<map>
<entry key="runMeTask2"

value-ref="runMeTask2" />
</map>
</property>

</bean>

<!-- Cron Trigger -->
<bean id="cronTrigger"

class="org.springframework.

scheduling.quartz.CronTriggerBean">

<property name="jobDetail"

ref="runMeJob" />
<property name="cronExpression"

value="0/10 * * * * ?" />

</bean>
<bean id="cronTrigger2" class="org.springframework.scheduling.

quartz.CronTriggerBean">

<property name="jobDetail"

ref="runMeJob2" />
<property name="cronExpression"

value="0/3 * * * * ?" />

</bean>

<bean class="org.springframework.scheduling.

quartz.SchedulerFactoryBean">
<property name="jobDetails">
<list>
<ref bean="runMeJob" />
<ref bean="runMeJob2" />
</list>
</property>

<property name="triggers">
<list>
<ref bean="cronTrigger" />
<ref bean="cronTrigger2" />
</list>
</property>
</bean>

</beans>

 

Begitu pula dengan quartz 3 job dst .. caranya sama ,, tinggal tambah source code yang berwarna merah seperti di atas ..

 

 

Comments[0]

Comments:

Post a Comment:
  • HTML Syntax: Allowed