9.2.13. Bean プロキシ
9.2.13.1. Bean プロキシ リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
プロキシは Bean のサブクラスで起動時に生成されます。プロキシは Bean の作成時にインジェクトされ、依存 Bean のライフサイクルはプロキシに関係しているため、依存するスコープ付き Bean をプロキシからインジェクトできます。また、プロキシは依存性の注入の代わりに使用され、2 つの問題を解決します。
プロキシを使用することで解決される、依存性注入の問題
- パフォーマンス - プロキシは依存性の注入よりも速度が早いため、高パフォーマンスを必要とする Bean に使用できます。
- スレッドセーフ - 複数のスレッドが同時に Bean にアクセスしている場合でも、プロキシは適切な Bean インスタンスにリクエストを転送します。依存性の注入はスレッドの安全性を保証しません。
プロキシ化できないクラス型
- プリミティブ型あるいはアレイ型
final
のクラスあるいはfinal
メソッドを持つクラス- プライベートではないデフォルトのコンストラクターを持つクラス