1. ホーム

[解決済み】Spring Boot起動後のコード実行について

2022-03-27 14:09:58

質問

の後にコードを実行したい。 スプリングブート アプリが起動し、ディレクトリの変更を監視します。

新しいスレッドを走らせてみましたが @Autowired のサービスはその時点では設定されていません。

を見つけることができました。 ApplicationPreparedEvent の前に起動します。 @Autowired アノテーションが設定されます。 理想的には、アプリケーションがhttpリクエストを処理する準備ができた時点で、このイベントが発生するようにしたいです。

より良いイベントはありますか? スプリングブート ?

解決方法は?

試してみてください。

@Configuration
@EnableAutoConfiguration
@ComponentScan
public class Application extends SpringBootServletInitializer {

    @SuppressWarnings("resource")
    public static void main(final String[] args) {
        ConfigurableApplicationContext context = SpringApplication.run(Application.class, args);

        context.getBean(Table.class).fillWithTestdata(); // <-- here
    }
}