启动Spring boot后如何“恢复”数据库中的数据?
例如 - 当我的服务器关闭时,某些行仍处于 NEW
状态。启动服务器时,我需要将状态更改为另一个状态。首先想到的是调用@PostConstruct
中的方法:
@PostConstruct
public void init() {
someService.prepareForExecution();
}
但在我看来这是错误的。我还可以运行另一个将更新的 Sheduller。
但我必须确保在服务器启动之前,所有数据都会恢复正常。怎样做才是正确的?
最佳答案
我会使用事件监听器
@EventListener(ApplicationReadyEvent.class)
public void applicationReady() {
someService.prepareForExecution();
}
在此处了解有关 Activity 的更多信息: https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-application-events-and-listeners
关于java - Spring启动后如何在DB中获取 "restore"数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54553698/