Quartz는 Trigger, Job 그리고 모든 종류의 jobs를 인식하고 있는 JobDetail을
사용한다. Quartz에 깔려 있는 기본적인 개념을 알고 싶다면,
| Property Name |
Description |
Required |
Default Value |
| jobDataAsMap |
주어진 Map의 JobDataMap에서 Object를 등록한다. 다른 object와는 다르게 이 object들은 JobDetail의 data map에서 이 Trigger만 이용할 수 있다.
|
N |
N/A |
| misfireInstructionName |
SimpleTrigger
class에서 대응되는 상수 name를 통한 instruction이 실패한 경우 설정한다.
|
N |
MISFIRE_INSTRUCTION_SMART_POLICY |
| triggerListenerNames |
Scheduler에 등록된 non-global TriggerListeners을 설정한 job의 TriggerListener name의 list를 설정한다.
TriggerListener name는 항상 TriggerListener implementation에 의해 리턴된 name를 지시한다..
|
N |
N/A |
| startDelay |
처음 job이 시작되기 전에 지연시간을 설정한다. 입력 한 milliseconds 단위의 시간에 현재시간을 더하면 시작시간이 된다.
시간 지연은 사용자가 시작 시간을 정하지 않으면 시간 지연은 적용된다. 그러나 Spring context안에서 전형적으로 사용할 때
시작 시간은 언제든지 Container가 시작되는 시간일 것이다. 이 경우에는 상대적인 시간 지연을 열거하는 것이 좋다.
|
N |
0 |
| jobDetail |
이 trigger와 관련된 JobDetail을 설정한다. JobDetail이 Spring-managed bean일 경우 bean reference와 함께 사용된다.
대신 trigger는 name과 group을 통해 job와 연관될 수 있다.
|
N |
N/A |
| repeatCount |
SimpleTrigger가 반복될 수를 설정한다. 반복 된 후 자동으로 삭제 된다.
|
N |
N/A |
| endTime |
SimpleTrigger 반복이 끝나는 시간을 입력한다. (그리고 종료 후 자동으로 삭제된다.)
|
N |
N/A |
| repeatInterval |
SimpleTrigger가 반복되는 interval 시간을 milliseconds 단위로 설정한다. repeatInterval은 0보다 커야 한다.
|
N |
N/A |
| timesTriggered |
SimpleTrigger가 시작된 시간을 설정한다.
|
N |
N/A |
| Property Name |
Description |
Required |
Default Value |
| name |
job의 이름을 설정한다. |
N |
FactoryBean의 Bean name |
| targetObj |
참조할 object의 명을 정의 해준다. |
N |
|
| targetMethod |
targetObj에서 설정한 Object에서 실행하고자 하는
method 명을 입력한다.
|
N |
|
| group |
job의 그룹을 설정한다. |
N |
the Scheduler의 그룹 |
| concurrent |
multiple jobs이 동시에 실행되는지 지정한다. |
N |
true |
| targetBeanName |
Spring BeanFactory에서 target bean을
설정한다. non-singleton beans을 실행하기 위해 targetObject를 이용할 때 정의한다. 정의한 "targetObject"과 "targetClass"의
값은 "targetBeanName"에 대응되는 값으로 오버라이드 될 수 있다. (i.e. 정적으로 미리정의된 bean type나 bean object)
|
N |
N/A |
다음은 일정 시간 마다 executeObj에 정의된 class의 executeMethod를 반복해서 실행하는 Scheduling Service의 예이다.