Springを起動するとコンポーネントスキャンが走り、DIコンテナが管理するアノテーションが付けられたクラスを探す。
対象のアノテーションが以下
- @Component
- @Controller
- @Service
- @Repository
- @Configuration
- @ControllAdvice
- @ManagedBean
- @Named
- @RestController
このアノテーションが付いているクラスを、Beanと呼ぶ
なお、上記の4つが比較的よく使われる。
アノテーションを付ける以外にもDIコンテナに登録することができる。
DIコンテナで管理するクラスのことを「Bean」と理解しておく。