SpringBootのアノテーション
SpingBootでWebアプリケーションを開発するときに必要となるアノテーションを解説します。詳細はアノテーション名をクリックしてください。
全般
アノテーション | 用途 |
@SpringBootApplication | 付与されたクラスをエントリポイントとしてアプリケーションを実行することを表す。 |
@Autowired | 付与されたフィールドに実装クラスをDIコンテナから注入する。 |
@Component | 付与されたクラスをDIコンテナに登録する。 |
@ComponentScan | 付与されたクラスのパッケージ以下をコンポーネントスキャンの対象に追加します。 |
@Value | 付与されたフィールド、実行メソッドの引数にプロパティファイルの値をセットする。 |
プレゼンテーション層(コントローラー)周りで使用するアノテーション
アノテーション | 用途 |
@Controller | 付与されたクラスがコントローラーであることを表す。 |
@RestController | @Controller と @ResponseBody を組み合わせた機能を付与するアノテーション。一般的にはHTMLを返すのではなく、JSONを返却するRest APIのコントローラーとして機能させるときに使用する。 |
@RequestMapping | |
@GetMapping | |
@PostMapping | |
@PatchMapping | |
@DeleteMapping | |
@RequestBody | |
@Param | |
@Value | |
@ResponseBody | |
ビジネス層(サービス)周りで使用するアノテーション
アノテーション | 用途 |
@Service | 付与されたクラスがサービスクラス(ビジネスロジックを提供するクラス)であることを表す。 |
インテグレーション層(リポジトリー/DAO)周りで使用するアノテーション
アノテーション | 用途 |
@Repository | 付与されたクラスがリポジトリー(DB操作を集約するクラス)であることを表す。 |
テストで使用するアノテーション
アノテーション | 用途 |
@SpringBootTest | 付与されたクラス内のテストがSpringBootコンテキストで実行するべきことを表す。 |
@Test | 付与されたメソッドが1つのテストケースであることを表す。 |
SpringBootで使用するアノテーションの公式Javadoc
アノテーションを調べるときは、必ず下記の公式のJavadocも読むようにします。
投稿日:2021年2月8日 更新日:
author