[解決済み] Spring @PostConstruct と init-method 属性の比較
2022-08-31 21:33:52
質問
を使用するのとでは、何か違いがあるのでしょうか?
@PostConstruct
アノテーションを使用することと、同じメソッドを
init-method
と同じメソッドをSpring XMLのコンフィギュレーションで宣言しますか?
どのように解決するのですか?
実質的に差はないと思いますが、動作の優先順位があります。
@PostConstruct
,
init-method
はBeanPostProcessorです。
-
@PostConstruct
はJSR-250のアノテーションであるのに対しinit-method
は Spring の初期化メソッドです。 -
もしあなたが
@PostConstruct
メソッドがある場合、これは初期化メソッドが呼ばれる前に最初に呼ばれます。 -
あなたのBeanがInitializingBeanを実装し、オーバーライドする場合は
afterPropertiesSet
をオーバーライドする場合、最初に@PostConstruct
が呼び出され、次にafterPropertiesSet
が呼び出され、次にinit-method
.
より詳細な情報は、Springの の参照ドキュメントをご覧ください。 .
JSR 250仕様の前は、xmlのinit-methodの使用が推奨されていました。これはJavaクラス(Bean)をspring特有のクラスやアノテーションから切り離すためです。
Java EEにJSR 250仕様が導入され、springがこれらのアノテーションをサポートするようになり、springフレームワークへの依存度はある程度まで下がりました。
しかし、これらの追加によってコードの可読性が向上したことは認めざるを得ません。
関連
-
[解決済み] Spring Data JPAにおけるCrudRepositoryとJpaRepositoryのインターフェースの違いは何ですか?
-
[解決済み] Spring Frameworkの@Injectと@Autowiredの違いは何ですか?どのような条件でどちらを使うか?
-
[解決済み] Spring の @Autowired フィールドが NULL になっているのはなぜですか?
-
[解決済み] springの@Controllerアノテーションと@RestControllerアノテーションの違いについて
-
[解決済み] Springの@Autowiredの使い方を理解する
-
[解決済み】Springの@Transactional属性はprivateメソッドで機能するか?
-
[解決済み] Spring Hibernate - 現在のスレッドでトランザクションに同期したセッションを取得できませんでした。
-
[解決済み] Spring Boot - 実行中のポートを取得する方法
-
[解決済み] Spring Dataです。"delete by "はサポートされていますか?
-
[解決済み] Spring Boot JPA - 自動再接続の設定
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] クラスを@Componentでアノテートした場合、Spring BeanとSingletonということになるのでしょうか?
-
[解決済み] Springのセキュリティ認証の例外を@ExceptionHandlerで処理する
-
[解決済み] Spring Data JPAでネイティブクエリ結果をNon-Entity POJOにマップする。
-
[解決済み] Spring Hibernate - 現在のスレッドでトランザクションに同期したセッションを取得できませんでした。
-
[解決済み] Spring Boot Rest Controllerは、異なるHTTPステータスコードを返すには?
-
[解決済み] Spring Boot - 実行中のポートを取得する方法
-
[解決済み] Spring Dataです。"delete by "はサポートされていますか?
-
[解決済み] Spring Boot JPA - 自動再接続の設定
-
[解決済み] Spring CrudRepositoryで大文字小文字を区別しないクエリ