クラス ScopedProxyFactoryBean
- 実装されているすべてのインターフェース:
- SerializableSE、- AopInfrastructureBean、- Aware、- BeanFactoryAware、- FactoryBean<ObjectSE>
このファクトリ Bean を使用して作成されたプロキシはスレッドセーフなシングルトンであり、透過的なスコープ動作で共有オブジェクトに注入できます。
 このクラスによって返されるプロキシは、ScopedObject インターフェースを実装します。これにより、現在、スコープから対応するオブジェクトを削除して、次のアクセス時にスコープに新しいインスタンスをシームレスに作成できます。
このファクトリによって作成されるプロキシは、デフォルトではクラスベースのプロキシであることに注意してください。これは、"proxyTargetClass" プロパティを "false" に切り替えることでカスタマイズできます。
- 導入:
- 2.0
- 作成者:
- Rod Johnson, Juergen Hoeller
- 関連事項:
- フィールドのサマリー- インターフェース org.springframework.beans.factory.FactoryBean から継承されたフィールド- OBJECT_TYPE_ATTRIBUTE
- コンストラクターの概要コンストラクター
- メソッドのサマリー修飾子と型メソッド説明このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。- ClassSE<?>この FactoryBean が作成するオブジェクトの型を返します。事前にわからない場合は- nullを返します。- booleanこのファクトリによって管理されるオブジェクトはシングルトンですか? つまり、- FactoryBean.getObject()は常に同じオブジェクト(キャッシュ可能な参照)を返しますか?- void- setBeanFactory- (BeanFactory beanFactory) 所有ファクトリを Bean インスタンスに提供するコールバック。- void- setTargetBeanName- (StringSE targetBeanName) スコープする Bean の名前を設定します。- クラス org.springframework.aop.framework.ProxyConfig から継承されたメソッド- copyFrom, isExposeProxy, isFrozen, isOpaque, isOptimize, isProxyTargetClass, setExposeProxy, setFrozen, setOpaque, setOptimize, setProxyTargetClass, toString
- コンストラクターの詳細- ScopedProxyFactoryBeanpublic ScopedProxyFactoryBean()新しい ScopedProxyFactoryBean インスタンスを作成します。
 
- メソッドの詳細- setTargetBeanNameスコープする Bean の名前を設定します。
- setBeanFactoryインターフェースからコピーされた説明:- BeanFactoryAware所有ファクトリを Bean インスタンスに提供するコールバック。- 通常の Bean プロパティの設定後、ただし - InitializingBean.afterPropertiesSet()またはカスタム init-method などの初期化コールバックの前に呼び出されます。- 次で指定:
-  インターフェース BeanFactoryAwareのsetBeanFactory
- パラメーター:
- beanFactory- 所有 BeanFactory(非- null)。Bean は、ファクトリのメソッドをすぐに呼び出すことができます。
- 関連事項:
 
- getObjectインターフェースからコピーされた説明:- FactoryBeanこのファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。- BeanFactoryと同様に、これにより、シングルトンとプロトタイプの両方のデザインパターンをサポートできます。- この FactoryBean が呼び出し時にまだ完全に初期化されていない場合(たとえば、循環参照に関係しているため)、対応する - FactoryBeanNotInitializedExceptionをスローします。- Spring 2.0 以降、FactoryBeans は - nullオブジェクトを返すことができます。ファクトリはこれを通常の値として使用します。この場合、FactoryBeanNotInitializedException はスローされません。FactoryBean の実装では、必要に応じて FactoryBeanNotInitializedException 自体をすぐにスローすることをお勧めします。- 次で指定:
-  インターフェース FactoryBean<ObjectSE>のgetObject
- 戻り値:
- Bean のインスタンス (nullにすることができます)
- 関連事項:
 
- getObjectTypeインターフェースからコピーされた説明:- FactoryBeanこの FactoryBean が作成するオブジェクトの型を返します。事前にわからない場合は- nullを返します。- これにより、たとえばオートワイヤーなどで、オブジェクトをインスタンス化せずに特定の型の Bean を確認できます。 - シングルトンオブジェクトを作成している実装の場合、このメソッドはシングルトンの作成を可能な限り回避しようとします。むしろ、事前に型を推定する必要があります。プロトタイプの場合、ここで意味のある型を返すこともお勧めします。 - このメソッドは、この FactoryBean が完全に初期化される前に呼び出すことができます。初期化中に作成された状態に依存しないでください。もちろん、利用可能な場合はそのような状態を引き続き使用できます。 - 注意 : オートワイヤーは、ここで - nullを返す FactoryBeans を単に無視します。FactoryBean の現在の状態を使用して、このメソッドを適切に実装することを強くお勧めします。- 次で指定:
-  インターフェース FactoryBean<ObjectSE>のgetObjectType
- 戻り値:
-  この FactoryBean が作成するオブジェクトの型、または呼び出し時に不明な場合は null
- 関連事項:
 
- isSingletonpublic boolean isSingleton()インターフェースからコピーされた説明:- FactoryBeanこのファクトリによって管理されるオブジェクトはシングルトンですか? つまり、- FactoryBean.getObject()は常に同じオブジェクト(キャッシュ可能な参照)を返しますか?- 注意 : FactoryBean がシングルトンオブジェクトを保持することを示す場合、 - getObject()から返されたオブジェクトは所有 BeanFactory によってキャッシュされる可能性があります。FactoryBean が常に同じ参照を公開しない限り、- trueを返さないでください。- FactoryBean 自体のシングルトンステータスは、通常、所有する BeanFactory によって提供されます。通常、そこではシングルトンとして定義する必要があります。 - 注意 : - falseを返すこのメソッドは、返されるオブジェクトが独立したインスタンスであることを必ずしも示しません。拡張- SmartFactoryBeanインターフェースの実装は、- SmartFactoryBean.isPrototype()メソッドを通じて独立したインスタンスを明示的に示す場合があります。この拡張インターフェースを実装しないプレーンな- FactoryBean実装は、- isSingleton()実装が- falseを返す場合、常に独立したインスタンスを返すと単純に想定されます。- FactoryBeanは通常シングルトンインスタンスを管理するため、デフォルトの実装では- trueが返されます。- 次で指定:
-  インターフェース FactoryBean<ObjectSE>のisSingleton
- 戻り値:
- 公開されたオブジェクトがシングルトンかどうか
- 関連事項: