Spring Boot 起動時にコードを実行する
質問:
コードを実行するにはどうすればよいですか? Spring Boot アプリケーションが起動した後はどうですか?新しいスレッドを開始しようとしましたが、その時点では必要な @Autowired サービスがまだ初期化されていません。また、注釈が設定される前にトリガーされる ApplicationPreparedEvent も発見しました。アプリケーションが HTTP リクエストを受信できるようになったら、コードを実行するためのより適切なイベントまたはメソッドはありますか?
回答:
この問題に対する効果的な解決策は、 ApplicationReadyEvent:
<code class="java">@EventListener(ApplicationReadyEvent.class) public void doSomethingAfterStartup() { System.out.println("hello world, I have just started up"); }</code>
Spring Boot バージョン 1.5.1.RELEASE でテストした場合、正常にテストされ、起動後に機能しました。このメソッドを使用すると、アプリケーションが完全に初期化され、HTTP リクエストを処理できる状態になったら、コードを実行できます。
以上がSpring Boot アプリケーションの起動後にコードを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。