## org.springframework.util
Class PropertyPlaceholderHelper

    java.lang.Object
      org.springframework.util.PropertyPlaceholderHelper

    public class PropertyPlaceholderHelper

extends Object

Utility class for working with Strings that have placeholder values in them. A placeholder takes the form `${name}`. Using `PropertyPlaceholderHelper` these placeholders can be substituted for user-supplied values.

Values for substitution can be supplied using a `Properties` instance or using a `PropertyPlaceholderHelper.PlaceholderResolver`.

Since:
  3.0
Author:
  Juergen Hoeller, Rob Harrop

Nested Class Summary
`static interface` `PropertyPlaceholderHelper.PlaceholderResolver` Strategy interface used to resolve replacement values for placeholders contained in Strings.

Constructor Summary
`PropertyPlaceholderHelper(String placeholderPrefix, String placeholderSuffix)` Creates a new `PropertyPlaceholderHelper` that uses the supplied prefix and suffix.
`PropertyPlaceholderHelper(String placeholderPrefix, String placeholderSuffix, String valueSeparator, boolean ignoreUnresolvablePlaceholders)` Creates a new `PropertyPlaceholderHelper` that uses the supplied prefix and suffix.

Method Summary
`protected String` `parseStringValue(String strVal, PropertyPlaceholderHelper.PlaceholderResolver placeholderResolver, Set<String> visitedPlaceholders)`
`String` `replacePlaceholders(String value, Properties properties)` Replaces all placeholders of format `${name}` with the corresponding property from the supplied `Properties`.
`String` `replacePlaceholders(String value, PropertyPlaceholderHelper.PlaceholderResolver placeholderResolver)` Replaces all placeholders of format `${name}` with the value returned from the supplied `PropertyPlaceholderHelper.PlaceholderResolver`.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PropertyPlaceholderHelper

    public PropertyPlaceholderHelper(String placeholderPrefix,
                                     String placeholderSuffix)

  Creates a new `PropertyPlaceholderHelper` that uses the supplied prefix and suffix. Unresolvable placeholders are ignored.

  Parameters:
    `placeholderPrefix` - the prefix that denotes the start of a placeholder.
    `placeholderSuffix` - the suffix that denotes the end of a placeholder.

### PropertyPlaceholderHelper

    public PropertyPlaceholderHelper(String placeholderPrefix,
                                     String placeholderSuffix,
                                     String valueSeparator,
                                     boolean ignoreUnresolvablePlaceholders)

  Creates a new `PropertyPlaceholderHelper` that uses the supplied prefix and suffix.

  Parameters:
    `placeholderPrefix` - the prefix that denotes the start of a placeholder
    `placeholderSuffix` - the suffix that denotes the end of a placeholder
    `valueSeparator` - the separating character between the placeholder variable and the associated default value, if any
    `ignoreUnresolvablePlaceholders` - indicates whether unresolvable placeholders should be ignored (`true`) or cause an exception (`false`).

Method Detail

### replacePlaceholders

    public String replacePlaceholders(String value,
                                      Properties properties)

  Replaces all placeholders of format `${name}` with the corresponding property from the supplied `Properties`.

  Parameters:
    `value` - the value containing the placeholders to be replaced.
    `properties` - the `Properties` to use for replacement.
  Returns:
    the supplied value with placeholders replaced inline.

### replacePlaceholders

    public String replacePlaceholders(String value,
                                      PropertyPlaceholderHelper.PlaceholderResolver placeholderResolver)

  Replaces all placeholders of format `${name}` with the value returned from the supplied `PropertyPlaceholderHelper.PlaceholderResolver`.

  Parameters:
    `value` - the value containing the placeholders to be replaced.
    `placeholderResolver` - the `PlaceholderResolver` to use for replacement.
  Returns:
    the supplied value with placeholders replaced inline.

### parseStringValue

    protected String parseStringValue(String strVal,
                                      PropertyPlaceholderHelper.PlaceholderResolver placeholderResolver,
                                      Set<String> visitedPlaceholders)