public class StandardEnvironment extends AbstractEnvironment
Environment
implementation suitable for use in 'standard' (i.e. non-web)
applications.
In addition to the usual functions of a ConfigurableEnvironment
such as
property resolution and profile-related operations, this implementation configures two
default property sources, to be searched in the following order:
environment.getProperty("xyz")
.
This ordering is chosen by default because system properties are per-JVM, while
environment variables may be the same across many JVMs on a given system. Giving
system properties precedence allows for overriding of environment variables on a
per-JVM basis.
These default property sources may be removed, reordered, or replaced; and
additional property sources may be added using the MutablePropertySources
instance available from AbstractEnvironment.getPropertySources()
. See
ConfigurableEnvironment
Javadoc for usage examples.
See SystemEnvironmentPropertySource
javadoc for details on special handling
of property names in shell environments (e.g. Bash) that disallow period characters in
variable names.
ConfigurableEnvironment
,
SystemEnvironmentPropertySource
,
StandardServletEnvironment
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME
System environment property source name: "systemEnvironment"
|
static java.lang.String |
SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME
JVM system properties property source name: "systemProperties"
|
ACTIVE_PROFILES_PROPERTY_NAME, DEFAULT_PROFILES_PROPERTY_NAME, IGNORE_GETENV_PROPERTY_NAME, logger, RESERVED_DEFAULT_PROFILE_NAME
Constructor and Description |
---|
StandardEnvironment() |
Modifier and Type | Method and Description |
---|---|
protected void |
customizePropertySources(MutablePropertySources propertySources)
Customize the set of property sources with those appropriate for any standard
Java environment:
"systemProperties"
"systemEnvironment"
|
acceptsProfiles, addActiveProfile, containsProperty, doGetActiveProfiles, doGetDefaultProfiles, getActiveProfiles, getConversionService, getDefaultProfiles, getProperty, getProperty, getProperty, getProperty, getPropertySources, getRequiredProperty, getRequiredProperty, getReservedDefaultProfiles, getSystemEnvironment, getSystemProperties, isProfileActive, merge, resolvePlaceholders, resolveRequiredPlaceholders, setActiveProfiles, setConversionService, setDefaultProfiles, setIgnoreUnresolvableNestedPlaceholders, setPlaceholderPrefix, setPlaceholderSuffix, setRequiredProperties, setValueSeparator, suppressGetenvAccess, toString, validateProfile, validateRequiredProperties
public static final java.lang.String SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME
public static final java.lang.String SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME
protected void customizePropertySources(MutablePropertySources propertySources)
Properties present in "systemProperties" will take precedence over those in "systemEnvironment".