Initial commit

This commit is contained in:
2026-05-29 17:49:25 +09:00
commit 330105cb27
1081 changed files with 148694 additions and 0 deletions
@@ -0,0 +1,52 @@
= 작업 스케쥴링
== 개요
SDL의 작업 스케쥴링은 http://www.quartz-scheduler.org/documentation/[Quartz]를 이용하여 구현하고 있다.
수행할 작업(Job)을 등록하고 Trigger에 Job을 추가한 후 Scheduler에 Trigger(s)를 설정한다.
=== 스케줄러 설정 예
.config.properties
[source,properties]
----
batch.user.long-term-check.cron=0 10 00 * * ?
----
.UserBatchConfig
[source,java]
----
@Configuration
public class UserBatchConfig {
@Value("${batch.user.long-term-check.cron}")
private String batchUserLongTermCheckCron;
/**
* 장기 미사용자 관리 Job
*/
@Bean
public JobDetail batchUserLongTermCheckJob() {
return JobBuilder
.newJob(UserBatchExecutor.class) // <1>
.withIdentity("batchUserLongTermCheck") // <2>
.withDescription("User LongTerm Check Batch")
.storeDurably(true)
.build();
}
/**
* 장기 미사용자 관리 Trigger
*/
@Bean
public CronTriggerFactoryBean batchUserLongTermCheckTrigger() {
CronTriggerFactoryBean trigger = new CronTriggerFactoryBean();
trigger.setJobDetail(batchUserLongTermCheckJob()); // <3>
trigger.setCronExpression(batchUserLongTermCheckCron); // <4>
return trigger;
}
}
----
<1> 서비스를 수행할 Job Class
<2> Job 구분 명
<3> Job 등록
<4> Cron 표현식 설정