🖥️
プログラミング自己主導学習[Spring Framework] @Component
@Component は Spring Framworkで提供されるアナテーションであり、スプリングコンテナで管理されるビンを定義する最も基本的な方法である。
@Service、@Repository、@Controllerなどは@Componentの拡張形態。
@Componentの役割
- スプリングコンテナが自動的にオブジェクトを生成して管理するようにしてくれる。
- 依存性注入を可能にしてくれる。
- 空き登録を自動化できる。
@Componentの動作方式
-
スプリングが@Component が付いたクラスを自動的に感知するには、コンポーネントスキャン(Component Scan)が必要である。
-
スプリングブートでは@SpringBootApplication アナテーションの内部に@ComponentScanが含まれており、自動的にスキャンされる。
@Component が付いたクラスは、スプリングコンテナによって自動的に管理される。
スプリングコンテナで管理するビーンだと思えばいい
Discussion