🗓️ 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