现在我们有这样的需求,那就是每10秒打印一个书的数量。要实现这个功能我们可以用Spring Boot为我们提供的方法来达到我们的需求。接下来我们修改StartupRunner的类。
1.6.1代码实现
1.首先,我们在BookPubApplication类加入如下的注释。
@SpringBootApplication |
2。接着,我们在StartupRunner类的run方法上加入@Scheduled的注释。
@Scheduled(initialDelay = 1000, fixedRate = 10000) |
3.启动我们应用,你将会看到控制台的日志输出。
1.6.2代码说明
我们在启动类BookPubApplication上加入了@EnableScheduling的注释,其实这个注释并不是Spring Boot所拥有的,实际上是Spring Context模块的注释。相似于@SpringBootApplication 和@EnableAutoConfiguration的注释。查看注释的内部,我们可以看到,其它这个功能引用了@Import(SchedulingConfiguration.class)这个方法。
加入了@Scheduled注释之后,Spring Beans在扫描时会创建ScheduledAnnotationBeanPostProcessor。任何方法上的注释都不会的争论而且执行时会创建适合的线程池。