public class PropertyPlaceholderConfigurer extends PlaceholderConfigurerSupport
local
properties
および / またはシステムプロパティと環境変数に対して解決する PlaceholderConfigurerSupport
サブクラス。Spring 3.1 では、PropertySourcesPlaceholderConfigurer
をこの実装よりも優先的に使用する必要があります。Spring 3.1 でも利用できる Environment
および PropertySource
メカニズムを利用することで、より柔軟性があります。
PropertyPlaceholderConfigurer
は、次の場合に使用するのに適切です。
spring-context
モジュールは使用できません(つまり、ApplicationContext
ではなく Spring の BeanFactory
API を使用しています)。"systemPropertiesMode"
および / または "systemPropertiesModeName"
プロパティを使用します。ユーザーは、これらの設定の使用をやめて、コンテナーの Environment
を介してプロパティソースの検索順序を設定することをお勧めします。ただし、PropertyPlaceholderConfigurer
を引き続き使用することにより、機能の正確な保存を維持できます。setSystemPropertiesModeName(java.lang.String)
, PlaceholderConfigurerSupport
, PropertyOverrideConfigurer
, PropertySourcesPlaceholderConfigurer
修飾子と型 | フィールドと説明 |
---|---|
static int | SYSTEM_PROPERTIES_MODE_FALLBACK 指定されたプロパティで解決できない場合は、システムプロパティを確認します。 |
static int | SYSTEM_PROPERTIES_MODE_NEVER システムプロパティを確認しないでください。 |
static int | SYSTEM_PROPERTIES_MODE_OVERRIDE 指定されたプロパティを試す前に、まずシステムプロパティを確認してください。 |
DEFAULT_PLACEHOLDER_PREFIX, DEFAULT_PLACEHOLDER_SUFFIX, DEFAULT_VALUE_SEPARATOR, ignoreUnresolvablePlaceholders, nullValue, placeholderPrefix, placeholderSuffix, trimValues, valueSeparator
localOverride, localProperties, logger
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターと説明 |
---|
PropertyPlaceholderConfigurer() |
修飾子と型 | メソッドと説明 |
---|---|
protected void | processProperties(ConfigurableListableBeanFactory beanFactoryToProcess, PropertiesSE props) 指定された Bean ファクトリの各 Bean 定義にアクセスし、${...} プロパティのプレースホルダーを指定されたプロパティの値で置き換えようとします。 |
protected StringSE | resolvePlaceholder(StringSE placeholder, PropertiesSE props) 指定されたプロパティを使用して、指定されたプレースホルダーを解決します。 |
protected StringSE | resolvePlaceholder(StringSE placeholder, PropertiesSE props, int systemPropertiesMode) 特定のプロパティを使用して特定のプレースホルダーを解決し、特定のモードに従ってシステムプロパティチェックを実行します。 |
protected StringSE | resolveSystemProperty(StringSE key) 指定されたキーを JVM システムプロパティとして解決します。また、一致するシステムプロパティが見つからない場合は、オプションでシステム環境変数としても解決します。 |
void | setSearchSystemEnvironment(boolean searchSystemEnvironment) 一致するシステムプロパティが見つからない場合、一致するシステム環境変数を検索するかどうかを設定します。 |
void | setSystemPropertiesMode(int systemPropertiesMode) システムプロパティのチェック方法を設定します: フォールバック、オーバーライド、なし。 |
void | setSystemPropertiesModeName(StringSE constantName) 対応する定数の名前でシステムプロパティモードを設定します。 |
doProcessProperties, setBeanFactory, setBeanName, setIgnoreUnresolvablePlaceholders, setNullValue, setPlaceholderPrefix, setPlaceholderSuffix, setTrimValues, setValueSeparator
convertProperties, convertProperty, convertPropertyValue, getOrder, postProcessBeanFactory, setOrder
loadProperties, mergeProperties, setFileEncoding, setIgnoreResourceNotFound, setLocalOverride, setLocation, setLocations, setProperties, setPropertiesArray, setPropertiesPersister
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public static final int SYSTEM_PROPERTIES_MODE_NEVER
public static final int SYSTEM_PROPERTIES_MODE_FALLBACK
public static final int SYSTEM_PROPERTIES_MODE_OVERRIDE
public void setSystemPropertiesModeName(StringSE constantName) throws IllegalArgumentExceptionSE
constantName
- 定数の名前 IllegalArgumentExceptionSE
setSystemPropertiesMode(int)
public void setSystemPropertiesMode(int systemPropertiesMode)
デフォルトは「フォールバック」です: 指定されたプロパティでプレースホルダーを解決できない場合、システムプロパティが試行されます。「オーバーライド」は、指定されたプロパティを試す前に、最初にシステムプロパティをチェックします。「決して」は、システムプロパティをまったくチェックしません。
public void setSearchSystemEnvironment(boolean searchSystemEnvironment)
デフォルトは "true" です。この設定をオフにして、システム環境変数に対してプレースホルダーを解決しないようにします。一般に、JVM システムプロパティとして外部値を渡すことをお勧めします。これは、既存の環境変数であっても、起動スクリプトで簡単に実現できます。
@Nullable protected StringSE resolvePlaceholder(StringSE placeholder, PropertiesSE props, int systemPropertiesMode)
デフォルトの実装は、システムプロパティチェックの前後に resolvePlaceholder (placeholder, props)
に委譲します。
サブクラスは、システムプロパティチェックのカスタマイズされたポイントを含む、カスタムの解決戦略に対してこれをオーバーライドできます。
placeholder
- 解決するプレースホルダー props
- この設定のマージされたプロパティ systemPropertiesMode
- このクラスの定数に応じたシステムプロパティモード setSystemPropertiesMode(int)
, System.getProperty(java.lang.String)
SE, resolvePlaceholder(String, java.util.Properties)
@Nullable protected StringSE resolvePlaceholder(StringSE placeholder, PropertiesSE props)
サブクラスは、カスタマイズされたプレースホルダーからキーへのマッピングまたはカスタム解決戦略に対して、これをオーバーライドできます。おそらく、フォールバックとして指定されたプロパティを使用するだけです。
システムプロパティモードに従って、このメソッドが呼び出される前に、システムプロパティがそれぞれチェックされることに注意してください。
placeholder
- 解決するプレースホルダー props
- この設定のマージされたプロパティ null
の解決された値(ない場合)setSystemPropertiesMode(int)
@Nullable protected StringSE resolveSystemProperty(StringSE key)
key
- システムプロパティキーとして解決するプレースホルダー null
setSearchSystemEnvironment(boolean)
, System.getProperty(String)
SE, System.getenv(String)
SEprotected void processProperties(ConfigurableListableBeanFactory beanFactoryToProcess, PropertiesSE props) throws BeansException
PropertyResourceConfigurer
の processProperties
beanFactoryToProcess
- アプリケーションコンテキストで使用される BeanFactoryprops
- 適用するプロパティ BeansException
- エラーの場合