私は、Spring コンテナーから Bean を取得します。
MyClass obj1 = Context.getBean("obj1");
obj1 を使用した後は、アプリケーションの残りの部分では必要ないと確信しています。
次に、Spring コンテナーに Bean を破棄するように依頼する方法はありますか。少なくともSpringコンテナに不要になったというヒントを与え、Springはそれを破棄するかどうかを決定します(ガベージコレクションに似ています)?
私は、Spring コンテナーから Bean を取得します。
MyClass obj1 = Context.getBean("obj1");
obj1 を使用した後は、アプリケーションの残りの部分では必要ないと確信しています。
次に、Spring コンテナーに Bean を破棄するように依頼する方法はありますか。少なくともSpringコンテナに不要になったというヒントを与え、Springはそれを破棄するかどうかを決定します(ガベージコレクションに似ています)?
「obj1」をプロトタイプ スコープの Bean にします。次に、Spring は、要求するたびに新しいインスタンスを作成し (これで問題がないことを確認してください)、それ以上インスタンスを管理しません。ガベージコレクションされます。プロトタイプ スコープは のようなものnew
で、Spring 構成の Bean のみを提供します。
Spring コンテナーにその Bean を破棄するように指示することはできないと思います。Spring フレームワークによって作成されたこれらの Bean のほとんどがSingleton
、コードに注入されるたびに Bean の同じインスタンスを提供することになっていることに気付いた場合。本来、シングルトンはアプリケーションの存続期間中存続することになっているため、破棄することはできません。