상황 연출 ...


1
factory.setTriggers( aaaTrigger().getObject(),bbbTrigger().getObject() );
cs


와 같이 트리거를 2개 설정 해놓음 하지만 이후 aaa트리거만 사용하기 위해 코드를 아래와 같이 변형


1
factory.setTriggers( aaaTrigger().getObject() );
cs


그리고 수행을 해보면 둘다 2개의 트리거가 동작하는 것을 볼 수 있음 ;;;


그래서 H2 DB에 접속하여 


QRTZ_TRIGGERS 테이블에서 트리거명 조회 이후 아래와 같이 트리거를 제거하면 된다.


1
delete QRTZ_TRIGGERS where TRIGGER_NAME = 'bbbTrigger'
cs


그러면 트리거가 도중에 중단 되는 것을 로그를 통해 확인할 수 있음.



하지만 ... 위와 같이 하면 다시 2개로 트리거를 복구하면 테이블에 해당트리거가 추가가 안됨 ;; 그래서 


1
2
factoryBean.setStartDelay(Long.MAX_VALUE);
factoryBean.setRepeatCount(0);
cs


위와 같이 사용하지 않을 경우에는 시작시간을 최대로 늘리고 반복카운트를 0으로 설정하는 방법을 차선책으로 해봤음.


아니면 job 을 execute 할 때 해당 메소드를 내부에 실행할 대상을 제거하는 방법도 좋은 거 같음. 언젠간 다시 쓸것이니... 


+ Recent posts