クラス PropertiesFactoryBean
- 実装されているすべてのインターフェース:
FactoryBean<PropertiesSE>, InitializingBean
プロパティファイルからの読み込みや、この FactoryBean でのローカルプロパティの設定をサポートします。作成された Properties インスタンスは、ロードされた値とローカル値からマージされます。場所もローカルプロパティも設定されていない場合、初期化時に例外がスローされます。
各リクエストでシングルトンまたは新しいオブジェクトを作成できます。デフォルトはシングルトンです。
- 作成者:
- Juergen Hoeller
- 関連事項:
フィールドのサマリー
クラス PropertiesLoaderSupport から継承されたフィールド
localOverride, localProperties, loggerインターフェース FactoryBean から継承されたフィールド
OBJECT_TYPE_ATTRIBUTEコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明final voidprotected PropertiesSEこのファクトリによって返されるオブジェクトを構築するためにサブクラスがオーバーライドできるテンプレートメソッド。final @Nullable PropertiesSEこのファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。この FactoryBean が作成するオブジェクトの型を返します。事前にわからない場合はnullを返します。final booleanこのファクトリによって管理されるオブジェクトはシングルトンですか? つまり、FactoryBean.getObject()は常に同じオブジェクト(キャッシュ可能な参照)を返しますか?final voidsetSingleton(boolean singleton) 共有の「シングルトン」プロパティインスタンスを作成するか、各リクエストで新しいプロパティインスタンスを作成するかを設定します。
コンストラクターの詳細
PropertiesFactoryBean
public PropertiesFactoryBean()
メソッドの詳細
setSingleton
public final void setSingleton(boolean singleton) 共有の「シングルトン」プロパティインスタンスを作成するか、各リクエストで新しいプロパティインスタンスを作成するかを設定します。デフォルトは "true" (共有シングルトン)です。
isSingleton
public final boolean isSingleton()インターフェースからコピーされた説明:FactoryBeanこのファクトリによって管理されるオブジェクトはシングルトンですか? つまり、FactoryBean.getObject()は常に同じオブジェクト(キャッシュ可能な参照)を返しますか?注意 : FactoryBean がシングルトンオブジェクトを保持していることを示している場合、
getObject()から返されたオブジェクトは、所有する BeanFactory によってキャッシュされる可能性があります。FactoryBean が常に同じ参照を公開しない限り、trueを返さないでください。FactoryBean 自体のシングルトンステータスは、通常、所有する BeanFactory によって提供されます。通常、そこではシングルトンとして定義する必要があります。
注意 :
falseを返すこのメソッドは、返されるオブジェクトが独立したインスタンスであることを必ずしも示しません。拡張SmartFactoryBeanインターフェースの実装は、SmartFactoryBean.isPrototype()メソッドを通じて独立したインスタンスを明示的に示す場合があります。この拡張インターフェースを実装しないプレーンなFactoryBean実装は、isSingleton()実装がfalseを返す場合、常に独立したインスタンスを返すと単純に想定されます。FactoryBeanは通常シングルトンインスタンスを管理するため、デフォルトの実装ではtrueが返されます。- 次で指定:
- インターフェース
FactoryBean<PropertiesSE>のisSingleton - 戻り値:
- 公開されたオブジェクトがシングルトンかどうか
- 関連事項:
afterPropertiesSet
インターフェースからコピーされた説明:InitializingBeanすべての Bean プロパティを設定し、BeanFactoryAware、ApplicationContextAwareなどを満たした後、包含BeanFactoryによって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
- 次で指定:
- インターフェース
InitializingBeanのafterPropertiesSet - 例外:
IOExceptionSE
getObject
インターフェースからコピーされた説明:FactoryBeanこのファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。BeanFactoryと同様に、これにより、シングルトンとプロトタイプの両方の設計パターンをサポートできます。この FactoryBean が呼び出し時にまだ完全に初期化されていない場合(たとえば、循環参照に関係しているため)、対応する
FactoryBeanNotInitializedExceptionをスローします。FactoryBeans は
nullオブジェクトを返すことができます。Bean ファクトリはこれを通常の値と見なし、この場合はFactoryBeanNotInitializedExceptionをスローしません。ただし、FactoryBean 実装では、必要に応じてFactoryBeanNotInitializedException自体をスローすることが推奨されます。- 次で指定:
- インターフェース
FactoryBean<PropertiesSE>のgetObject - 戻り値:
- Bean のインスタンス (
nullにすることができます) - 例外:
IOExceptionSE- 関連事項:
getObjectType
インターフェースからコピーされた説明:FactoryBeanこの FactoryBean が作成するオブジェクトの型を返します。事前にわからない場合はnullを返します。これにより、たとえばオートワイヤーなどで、オブジェクトをインスタンス化せずに特定の型の Bean を確認できます。
シングルトンオブジェクトを作成する実装の場合、このメソッドはシングルトンの作成を可能な限り回避し、事前に型を推定する必要があります。プロトタイプの場合は、ここで意味のある型を返すことも推奨されます。
このメソッドは、この FactoryBean が完全に初期化される前に呼び出すことができます。初期化中に作成された状態に依存しないでください。もちろん、利用可能な場合はそのような状態を引き続き使用できます。
注意 : オートワイヤーは、ここで
nullを返す FactoryBeans を単に無視します。FactoryBean の現在の状態を使用して、このメソッドを適切に実装することを強くお勧めします。- 次で指定:
- インターフェース
FactoryBean<PropertiesSE>のgetObjectType - 戻り値:
- この FactoryBean が作成するオブジェクトの型、または呼び出し時に不明な場合は
null - 関連事項:
createProperties
このファクトリによって返されるオブジェクトを構築するためにサブクラスがオーバーライドできるテンプレートメソッド。デフォルトの実装は、プレーンなマージされた Properties インスタンスを返します。共有シングルトンの場合、この FactoryBean の初期化時に呼び出されます。それ以外の場合は、
getObject()呼び出しごとに実行されます。- 戻り値:
- このファクトリによって返されたオブジェクト
- 例外:
IOExceptionSE- プロパティのロード中に例外が発生した場合- 関連事項: