如何在启动 Spring Boot Scheduler 之前做一些预处理?

How to do some preprocessing before starting Spring Boot Scheduler?

我想要一些基本的预处理代码,每次启动调度程序之前只需要 运行 一次。我们怎样才能在 Spring Boot 中实现同样的效果?

如果您只想 运行 编码一次,您可以等到 Spring 准备好,然后 运行 编码。为此,您可以像这样监听事件:

@EventListener(ApplicationReadyEvent.class)
public void doSomethingAfterStartup() {
  System.out.println("run your code here");
}

您可以将该代码放入应用程序 class 以查看结果。

你在找这个吗?还有其他选择。但请详细说明问题。

@Component
public class Cache {

     ...

     @PostConstruct
     public void initializeCache() {
     ...
     }

     @Scheduled(fixedRate = 60L * 1000L)
     public void refreshCache() {
     ...
     }

}

致谢: