Préparation et rafraîchissement du contexte
Pour la phase de préparation, le contexte BootstrapContext est recopié dans le contexte normal et l’évenement contextPrepared est émis. Le BootstrapContext est ensuite clôturé, la définition du Bean principal (qui contient le main) est ajouté au contexte puis l’événement contextLoaded est émis.
Lors de la phase de refresh, le contexte Spring est initialisé, le conteneur web (Jetty, Tomcat…) est lancé sans autoriser les connexions.
Les stubs de propriétés sont remplacés et les beans (non lazy) sont alors créés. Sping signale alors au serveur embarqué qu’il peut accepter les connexions et l’événement ContextRefreshEvent est lancé.
À ce moment précis, le contexte Spring est chargé mais il reste la partie concernée par l’autoconfiguration (annotation @EnableAutoConfiguration).