봅니다 예를 들어, CronTrigger
또는 사용자 정의 Trigger
를 사용하여, 일정 explicitly을 설정합니다 :
@SpringBootApplication
@EnableScheduling
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
@Bean
public TaskScheduler taskScheduler() {
return new ThreadPoolTaskScheduler();
}
}
@Component
@RequiredArgsConstructor // Lombok annotation
public class StartUp implements ApplicationRunner {
@NonNull private final TaskScheduler scheduler;
@Override
public void run(ApplicationArguments args) throws Exception {
// Variant 1
scheduler.schedule(this::myTask, new CronTrigger(/* your schedule */));
// Variant 2
scheduler.schedule(this::myTask, this::myTriger);
}
private void myTask() {
//...
}
private Date myTrigger(TriggerContext triggerContext) {
//...
}
}