🫘
Bean
Bean登録する
- オブジェクトをSpring IoCコンテナに登録し、管理できるようにすること。
- 【1】アノテーションを使ってBean登録
-
@Component
,@Service
,@Repository
,@Controller
などを付与 -
@ConfigurationProperties
でプロパティをバインドし、@Component
や@Configuration
を付与
-
- 【2】
@Configuration
と@Bean
を使用してBean登録- クラスに対して
@Configuration
、メソッドに対して@Bean
を付与する
- クラスに対して
- 【1】アノテーションを使ってBean登録
- ※Spring Iocコンテナ:Inversion of Control。アプリのオブジェクトのBeanライフサイクルを管理。
Bean登録したいクラスが抽象クラスのとき
- 抽象クラスのBean登録は不可。
- 抽象クラスを継承して作成したサブクラスをSpringコンテナにBean登録。
Beanライフサイクル
- インスタンス化:Spring IoCコンテナがBeanのインスタンスを生成
- 依存関係注入:必要な依存オブジェクトを注入して、Beanの依存関係を解決
-
初期化:Beanの初期化メソッドの呼び出し。
-
@PostConstruct
やInitializingBeanインターフェースのafterPropertiesSetメソッドで初期化メソッドが定義可能(?)
-
- 使用
-
破棄:アプリのシャットダウン時、Beanの破棄メソッドの呼び出し
-
@PreDestroy
やDisposanleBeanインターフェースのdestroyメソッドで破棄メソッドが定義可能(?)
-
Discussion