5

誰かがカスタムスコープを理解するのを手伝ってくれませんか。私は手動と多くのオンラインの例を見て、それがどのように実装されているかを理解しました。しかし、なぜカスタムプロキシが必要なのか、そしてなぜBeanの範囲を制限するのかは、まだはっきりしていません。

シングルトンの場合、すべての参照に単一のBeanを指定する場合はシングルトンを使用し、Beanが参照されるたびに新しい参照を指定する場合はプロトタイプを使用します。

今、カスタムスコープに関する私の理解はカスタムスコープです
-私たちはカスタムスコープを2つの中間として使用します。これは、毎回単一の参照も新しい参照も渡したくないということです。しかし、それは私たちがいるシングルトンにもっと近いです。優先する場所(基になるスレッドローカルやマップなど)から、毎回同じBeanを渡します。

私のコンセプトを明確にするのを手伝ってください..ここでの主な質問は、なぜカスタムスコープなのかということです。いつ必要ですか?

4

2 に答える 2

3

それは実際には当面の問題に依存します。たとえば、特定の Bean の事前定義された数のインスタンスを作成したい場合がありますが、それを超えてはなりません。したがって、この数に達するまでは新しいインスタンスを作成し続けますが、数に達すると、バランスの取れた方法で既存のインスタンスを返します。

これは、インスタンスが大量のリソース (メモリなど) を占有するが、新しいインスタンスを使用するとアプリケーションの速度が上がるという問題に適用できます。そのため、必要に応じて適切な量の新しいオブジェクトを作成し、インスタンスの数がその量を超えたときに既存のオブジェクトに委任することができます (リソース使用率よりもパフォーマンスが低下します)。

于 2011-05-28T07:38:02.533 に答える