| java.lang.Object | ||
| ↳ | org.springframework.core.env.AbstractEnvironment | |
| ↳ | org.springframework.core.env.DefaultEnvironment | |
|  Known Direct Subclasses | 
Default implementation of the Environment interface. Used throughout all non-Web*
 ApplicationContext implementations.
 
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.getPropertyResolver().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 getPropertySources().
 
ConfigurableEnvironment environment = new DefaultEnvironment(); MutablePropertySources propertySources = environment.getPropertySources(); MapmyMap = new HashMap (); myMap.put("xyz", "myValue"); propertySources.addFirst(new MapPropertySource("MY_MAP", myMap)); 
MutablePropertySources propertySources = environment.getPropertySources(); propertySources.remove(DefaultEnvironment.SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME)
   MutablePropertySources propertySources = environment.getPropertySources();
   MockPropertySource mockEnvVars = new MockPropertySource().withProperty("xyz", "myValue");
   propertySources.replace(DefaultEnvironment.SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME, mockEnvVars);
 
 When an Environment is being used by an ApplicationContext, it is important
 that any such PropertySource manipulations be performed before the context's refresh() method is
 called. This ensures that all PropertySources are available during the container bootstrap process,
 including use by property placeholder configurers.
  
| Constants | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| String | SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME | System environment property source name: {@value } | |||||||||
| String | SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME | JVM system properties property source name: {@value } | |||||||||
| [Expand] Inherited Constants | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  From class
org.springframework.core.env.AbstractEnvironment | |||||||||||
| [Expand] Inherited Fields | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  From class
org.springframework.core.env.AbstractEnvironment | |||||||||||
| Public Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Create a new  Environmentpopulated with property sources in the following order:
 Properties present in {@value #SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME} will take precedence over those in {@value #SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME}. | |||||||||||
| [Expand] Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  From class
  org.springframework.core.env.AbstractEnvironment | |||||||||||
|  From class
  java.lang.Object | |||||||||||
|  From interface
  org.springframework.core.env.ConfigurableEnvironment | |||||||||||
|  From interface
  org.springframework.core.env.ConfigurablePropertyResolver | |||||||||||
|  From interface
  org.springframework.core.env.Environment | |||||||||||
|  From interface
  org.springframework.core.env.PropertyResolver | |||||||||||
System environment property source name: {@value }
JVM system properties property source name: {@value }
Create a new Environment populated with property sources in the following order:
 
Properties present in {@value #SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME} will take precedence over those in {@value #SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME}.