Externalizing an environmental configuration using Java system properties

While environment variables can, on rare occasions, be hit or miss, the good old Java system properties can always be trusted to be there for you. In addition to using the environment variables and command-line arguments represented by the property names prefixed with a double dash (--), Spring Boot provides you with the ability to use the plain Java system properties to set or override the configuration properties.

This can be useful in a number of situations, particularly if your application is running in a container that sets certain values during startup via the system properties that you want to get access to, or if a property value is not set via a command-line -D argument, but rather in some library via code and by calling System.setProperty(...), especially if property value is being accessed from inside a static method of sorts. While arguably these cases are rare, it takes only one to make you bend over backwards in an effort to try and integrate this value into your application.

In this recipe, we will use the same application executable that was used for the previous one, with the only difference being that we are using Java system properties instead of command-line arguments or environment variables to set our configuration properties at runtime.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.15.146.184