Spring Boot の中核的なアノテーション
Spring Boot のコアアノテーションは次のようなものがあります。
- @SpringBootApplication:Spring Bootアプリケーションのエントリーポイントを識別するためメインクラスにアノテーションとして使用されます。
- @Configuration:このクラスを、いくつかのBeanを作成する設定クラスとして注釈付けします。
- @EnableAutoConfiguration:自動構成を有効にすることで、Spring Bootはプロジェクトの依存関係に基づいて自動的に構成を実行します。
- @ComponentScan:条件に合ったコンポーネント、設定クラス、サービスを自動的にスキャンしてロードします。
- @RestController:クラスはRestfulスタイルのコントローラで、メソッドの@ResponseBodyアノテーションは返り値を直接クライアントにレスポンスボディとして返すことができます。
- RequestMapping:リクエストパスと HTTP リクエストメソッドを具体的なコントローラーメソッドにマッピングするために使用されます。
- @GetMapping、@PostMapping、@PutMapping、@DeleteMapping は、順に HTTP リクエストメソッドのショートカットを表します。
- @RequestParam: リクエストパラメータから値を取得するメソッドです。
- @PathVariable:リクエストパスから値を取得するために使用します。
- リクエストボディの内容をメソッドのパラメータにバインドするために使用されます。
- @Autowired:依存関係のBeanの自動アセンブルに使用します。
- @Value:設定プロパティの値を注入する。
- プロパティをクラスのフィールドにバインドするために、コンフィギュレーションファイルをバインドします。
- @Bean:メソッドに付与し、Springが管理・組み立てするBeanオブジェクトを返却します。
- @Qualifier:具体的なDIオブジェクトの名前を指定するために使用される。
- 条件に従って動的にBeanを作成するために使われます。
- @Async:メソッドを非同期実行する際の制御を行います。
- @EnableAsync: 非同期実行機能の有効化
- @EnableScheduling: 定期実行タスク機能を有効化
- @Scheduled:メソッドがいつ一定時刻に実行されるかを指定するための時間ルール