Spring Boot の起動時にコードを実行する
Spring Boot を使用してアプリケーションを構築する場合、開発者はアプリケーションの起動後に特定のタスクを実行する必要があることがよくあります。完全に初期化されました。この記事では、特に Spring Boot 起動後のディレクトリの変更の監視に焦点を当てて、このシナリオについて説明します。
Spring の依存関係注入フレームワーク (自動配線) がサービスを完全に初期化していない可能性があるため、この目的でのスレッドの使用には問題があります。監視タスクで必要となります。代わりに、Spring Boot はアプリケーション イベントを使用した代替アプローチを提供します。
ApplicationPreparedEvent イベントは依存関係の注入が完了する前に送出されるため、この目的には適していません。幸いなことに、Spring Boot はより適切なイベントを提供しています:
ApplicationReadyEvent
このイベントは、アプリケーションが完全に初期化され、HTTP リクエストを処理する準備が整うとトリガーされます。このイベントをサブスクライブすることで、指定されたディレクトリを監視するコードがアプリケーションが動作しているときにのみ実行されるようにすることができます。
次のコード スニペットは、ApplicationReadyEvent の利用方法を示しています。
<code class="java">@EventListener(ApplicationReadyEvent.class) public void doSomethingAfterStartup() { System.out.println("hello world, I have just started up"); }</code>
このメソッドは、Spring Boot アプリケーションが開始され、リクエストを処理する準備ができた後に実行されます。 ApplicationReadyEvent の柔軟性により、アプリケーションの起動後に任意のコードを実行できます。
以上がSpring Boot 起動後にコードを実行し、ディレクトリの変更を監視する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。