Junior — Middle
How is the external configuration structure implemented within Spring and how is it organized?
sobes.tech AI
Answer from AI
In Spring, the structure of external configurations is organized through the use of properties files or YAML files, which are located outside the code and loaded at application startup.
Main features:
- application.properties / application.yml — standard configuration files located in the project resources.
- Profiles — allow having different configurations for different environments (dev, test, prod), for example, application-dev.yml.
- @Value and @ConfigurationProperties — annotations for injecting configuration values into beans.
- External sources — configurations can be stored outside the application (e.g., environment variables, command line, external files), and Spring Boot automatically picks them up.
Example of using @ConfigurationProperties:
@Component
@ConfigurationProperties(prefix = "app")
public class AppConfig {
private String name;
private int timeout;
// getters and setters
}
And in application.yml:
app:
name: MyApp
timeout: 5000
Thus, Spring organizes configuration centrally, with the ability to override and convenient access from code.