2016-08-21 12 views
0

スプリングブートなしでSpringブートプロジェクト を開発していますが、xml構成を使用せず、アノテーションを使用しています。 使用方法@Schedule(cron="bla bla...") ここに@EnableSchedulingを入れてください。以下 が動作していないコードの私の作品です:非スプリングブートプロジェクトで@Scheduledアノテーションを使用する方法

@RestController 
public class MyController { 
    @Scheduled(cron = "0 40 22 * * SUN") 
    public void routinessundayBAS1() throws EntityNotFoundException { 
     System.out.println("coming"); 
    } 
} 

答えて

2

Jakub氏によると、@Configurationクラスに@EnableSchedulingを追加する必要があります。 SchedulingConfigurerインターフェイスを実装することによって、スケジューラを構成して構成をカスタマイズすることができます。例:

@Configuration 
@EnableScheduling 
@ComponentScan("PACKAGES WITH SCHEDULED ANNOTATIONS") 
public class ConfigScheduler implements SchedulingConfigurer { 
    ...  
    @Bean 
    public ThreadPoolTaskScheduler taskScheduler() { 

     ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler(); 
     scheduler.setPoolSize(threadpoolsize); 
     scheduler.setThreadGroupName(threadgroupname); 
     scheduler.setThreadNamePrefix(threadPrefix); 
     scheduler.setAwaitTerminationSeconds(timeout);  
     return scheduler; 
    } 

    @Override 
    public void configureTasks(ScheduledTaskRegistrar registrar) {  
     TaskScheduler scheduler = this.taskScheduler(); 
     registrar.setTaskScheduler(scheduler); 
    } 
    ... 
} 
3

あなたはどの@Configurationクラスに@EnableSchedulingを配置する必要があります。

関連する問題