クラス PropertyOverrideConfigurer
java.lang.ObjectSE
org.springframework.core.io.support.PropertiesLoaderSupport
org.springframework.beans.factory.config.PropertyResourceConfigurer
org.springframework.beans.factory.config.PropertyOverrideConfigurer
- 実装されているすべてのインターフェース:
- BeanFactoryPostProcessor、- Ordered、- PriorityOrdered
 アプリケーションコンテキスト定義の Bean プロパティ値をオーバーライドするプロパティリソースコンフィギュレーター。プロパティファイルから Bean 定義に値をプッシュします。
構成行は次の形式であることが期待されます。
beanName.property=valueプロパティファイルの例:
dataSource.driverClassName=com.mysql.jdbc.Driver dataSource.url=jdbc:mysql:mydbPropertyPlaceholderConfigurer とは対照的に、元の定義には、このような Bean プロパティのデフォルト値を設定することも、まったく値を設定しないこともできます。オーバーライドするプロパティファイルに特定の Bean プロパティのエントリがない場合、デフォルトのコンテキスト定義が使用されます。
コンテキスト定義はオーバーライドされることを認識していないことに注意してください。そのため、XML 定義ファイルを見てもすぐにはわかりません。さらに、指定されたオーバーライド値は常にリテラル値であることに注意してください。それらは Bean 参照に変換されません。これは、XML Bean 定義の元の値が Bean 参照を指定している場合にも当てはまります。
同じ Bean プロパティに異なる値を定義する複数の PropertyOverrideConfigurers の場合、(オーバーライドメカニズムにより)最後の 1 つが優先されます。
 プロパティ値は、convertPropertyValue メソッドをオーバーライドすることで、読み込んだ後で変換できます。例: 暗号化された値は、処理する前に検出および復号化できます。
- 導入:
- 12.03.2003
- 作成者:
- Juergen Hoeller, Rod Johnson
- 関連事項:
- フィールドのサマリーフィールド- クラス org.springframework.core.io.support.PropertiesLoaderSupport から継承されたフィールド- localOverride, localProperties, logger- インターフェース org.springframework.core.Ordered から継承されたフィールド- HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
- コンストラクターの概要コンストラクター
- メソッドのサマリー修飾子と型メソッド説明- protected void- applyPropertyValue- (ConfigurableListableBeanFactory factory, StringSE beanName, StringSE property, StringSE value) 指定されたプロパティ値を対応する Bean に適用します。- boolean- hasPropertyOverridesFor- (StringSE beanName) この Bean のオーバーライドはありましたか? 処理が少なくとも 1 回発生した後でのみ有効です。- protected void- processKey- (ConfigurableListableBeanFactory factory, StringSE key, StringSE value) 指定されたキーを 'beanName.property' エントリとして処理します。- protected void- processProperties- (ConfigurableListableBeanFactory beanFactory, PropertiesSE props) 特定のプロパティを特定の BeanFactory に適用します。- void- setBeanNameSeparator- (StringSE beanNameSeparator) Bean 名とプロパティパスの間に期待するセパレータを設定します。- void- setIgnoreInvalidKeys- (boolean ignoreInvalidKeys) 無効なキーを無視するかどうかを設定します。- クラス org.springframework.beans.factory.config.PropertyResourceConfigurer から継承されたメソッド- convertProperties, convertProperty, convertPropertyValue, getOrder, postProcessBeanFactory, setOrder- クラス org.springframework.core.io.support.PropertiesLoaderSupport から継承されたメソッド- loadProperties, mergeProperties, setFileEncoding, setIgnoreResourceNotFound, setLocalOverride, setLocation, setLocations, setProperties, setPropertiesArray, setPropertiesPersister
- フィールドの詳細- DEFAULT_BEAN_NAME_SEPARATORデフォルトの Bean 名前セパレータ。- 関連事項:
 
 
- コンストラクターの詳細- PropertyOverrideConfigurerpublic PropertyOverrideConfigurer()
 
- メソッドの詳細- setBeanNameSeparatorBean 名とプロパティパスの間に期待するセパレータを設定します。デフォルトはドット("." )です。
- setIgnoreInvalidKeyspublic void setIgnoreInvalidKeys- (boolean ignoreInvalidKeys) 無効なキーを無視するかどうかを設定します。デフォルトは "false" です。- 無効なキーを無視すると、"beanName.property" 形式に従わないキー (または無効な Bean 名またはプロパティを参照するキー) はデバッグレベルでログに記録されます。これにより、プロパティファイルに任意の他のキーを含めることができます。 
- processPropertiesprotected void processProperties- (ConfigurableListableBeanFactory beanFactory, PropertiesSE props) throws BeansException クラスからコピーされた説明:- PropertyResourceConfigurer特定のプロパティを特定の BeanFactory に適用します。- 次で指定:
-  クラス PropertyResourceConfigurerのprocessProperties
- パラメーター:
- beanFactory- アプリケーションコンテキストで使用される BeanFactory
- props- 適用するプロパティ
- 例外:
- BeansException- エラーの場合
 
- processKeyprotected void processKey- (ConfigurableListableBeanFactory factory, StringSE key, StringSE value) throws BeansException 指定されたキーを 'beanName.property' エントリとして処理します。
- applyPropertyValueprotected void applyPropertyValue- (ConfigurableListableBeanFactory factory, StringSE beanName, StringSE property, StringSE value) 指定されたプロパティ値を対応する Bean に適用します。
- hasPropertyOverridesForこの Bean のオーバーライドはありましたか? 処理が少なくとも 1 回発生した後でのみ有効です。- パラメーター:
- beanName- ステータスを照会する Bean の名前
- 戻り値:
- 名前付き Bean のプロパティのオーバーライドがあったかどうか