🗓️ 31052024 1426
Run
SpringApplication.run()triggers application lifecycle
Bootstrap
- Creates an appropriate 
ApplicationContextinstance. - Loads application context with beans.
 
Environment Preparation
- Loads and configures properties (e.g. 
application.properties/application.yml) - Calls 
EnvironmentPostProcessorto customise environment (properties / profiles) before beans are processed 
Context Preparation
- Calls 
ApplicationContextInitializer - Prepares 
ApplicationContext 
Context Refresh
- Loads all bean definitions
 - Refresh 
ApplicationContext 
Application Running
- Calls 
CommandLineRunnerandApplicationRunnerbeans. 
Shutdown Phase
- For graceful shutdown
 - Calls 
DisposableBean/@PreDestroyannotated methods 
References
- https://reflectoring.io/spring-bean-lifecycle/
 - ChatGeePeeTee