在Spring Boot應用啟動時如何執行程式碼? -Dukesletter
有時,您的應用程式需要在啟動時載入或預處理一些資訊。如果您正在使用像Spring Boot這樣的複雜框架來管理物件的生命週期,那麼何時才是正確的時刻?spring提供了哪些機制來執行該過程?
Spring Boot具有多種機制,Tom Hombergs在以下文章中總結了主要機制:“ 在Spring Boot應用程式啟動時執行程式碼 ”。
作為個人建議:切勿使用@PostConstruct或載入或處理資訊InitializingBean。
Spring在建立應用程式上下文時會呼叫這些方法,並且該過程在主執行緒中執行,從而鎖定了其他初始化過程。如果您有多個帶有的物件@PostConstruct,它們將在主執行緒中按順序執行,並且您不知道執行的順序。
我個人更喜歡使用CommandLineRunner,ApplicationRunner或者ApplicationListener,因為一旦應用程式上下文已經建立,包括HTTP容器(Tomcat或碼頭),它們被執行,因為上下文已準備就緒,你可以並行執行多個程式。
如果要正確管理如何用訊號通知容器的就緒狀態,則如何初始化伺服器很重要。
相關文章
- Spring Boot 應用程式啟動流程分析Spring Boot
- 如何在Spring Boot應用啟動之後立刻執行一段邏輯Spring Boot
- 在GraalVM中部署執行Spring Boot應用 - Indrek OtsLVMSpring Boot
- 如何讓spring boot 啟動後就執行某個方法Spring Boot
- Springboot啟動時執行指定程式碼Spring Boot
- 在Spring Boot應用程式中使用Kubernetes ConfigMapSpring Boot
- 如何在Spring Boot應用程式中啟用GZIP壓縮? | 前端後端Spring Boot前端後端
- 利用神器BTrace 追蹤線上 Spring Boot應用執行時資訊Spring Boot
- Spring Boot 3用CDS提升20%啟動時間Spring Boot
- Hazelcast JET在Spring Boot上執行ASTSpring Boot
- 如何執行Spring Boot專案Spring Boot
- 你知道如何自動儲存 Spring Boot 應用程式號嗎Spring Boot
- 如何使用ParcelJS在Spring Boot應用程式中打包前端 - codecentric AG BlogJSSpring Boot前端
- 如何在Docker容器啟動時自動執行指令碼Docker指令碼
- HttpRuntime應用程式的執行時HTTP
- Spring boot應用如何支援httpsSpring BootHTTP
- Spring Boot 2.0(七):Spring Boot 如何解決專案啟動時初始化資源Spring Boot
- 在IntelliJ idea中使用docker除錯Spring Boot應用程式IntelliJIdeaDocker除錯Spring Boot
- Spring Boot應用程式有哪些功能?Spring Boot
- Spring Boot 應用程式中的 QueryDSLSpring Boot
- Spring Boot + Kotlin + Coroutines應用演示程式Spring BootKotlin
- Spring Boot應用程式事件教程 - reflectoringSpring Boot事件
- [maven][spring boot] mvn spring-boot:run啟動時,指定pom檔案MavenSpring Boot
- 如何預熱Spring Boot應用? - sebsteinSpring Boot
- Spring Boot原始碼分析-啟動過程Spring Boot原始碼
- 在Spring Boot中建立自己的啟動器Spring Boot
- Linux 檢視程式啟動時間、執行時間Linux
- Spring Boot Intellij 執行應用的時候 Command line is too long. Shorten command line for 錯誤Spring BootIntelliJ
- 使用lazyInit縮短Spring Boot啟動時間Spring Boot
- 將Spring Boot應用變成GraalVM本機映象快速執行 - codecentricSpring BootLVM
- 在 WASI 上執行 .NET 7 應用程式
- spring-boot啟動Springboot
- Spring Boot啟動流程Spring Boot
- 如何測量程式碼執行時間
- 京東一面:如何在SpringBoot啟動時執行特定程式碼?有哪些方式?Spring Boot
- 如何優雅地停止 Spring Boot 應用?Spring Boot
- TechTool Pro要求在應用程式啟動時安裝助手工具
- Android原始碼(二)應用程式啟動Android原始碼