springboot 熱更新 springboot生產環境熱更新



文章插圖
springboot 熱更新 springboot生產環境熱更新

文章插圖
單元測試
眾所周知,程序員在開發過程中,每當完成一個功能接口的開發或者業務方法的代碼編寫后,通常都會借助單元測試驗證開發的功能知否能夠正常運行 。因此SpringBoot提供了一些注解和工具去幫助程序員測試功能 。在使用時,需要提前在項目的Maven的pom.xml文件中添加spring-boot-starter-test測試依賴啟動器,就可以通過相關注解實現單元測試 。
添加spring-boot-starter-test依賴
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency>復制代碼編寫單元測試類進行測試
/** * SpringJUnit4ClassRunner.class:Spring運行環境 * JUnit4.class:JUnit運行環境 * SpringRunner.class:Spring Boot運行環境 [email protected](SpringRunner.class)//標記為當前類為SpringBoot測試類,[email protected]ass SpringbootDemoApplicationTests {@Testvoid contextLoads() {}@Resourceprivate DemoController demoController;@Testpublic void testDemoController(){String s = demoController.helloBoot();System.out.println(s);}}復制代碼上述代碼中,[email protected],然后在testDemoController()方 法中調用了DemoController類中對應的請求控制方法contextLoads(),并輸出打印結果
SpringBoot熱部署
通常情況下,在開發過程中,程序員需要對一段業務代碼進行不斷地修改測試,才能完成功能,但是在修改代碼之后需要重新啟動服務,而有些服務的啟動需要花費很長的時間,這種修改重啟的操作極大的降低了程序的開發效率 。因此,SpringBoot專門提供了進行熱部署的依賴啟動期,用于進行項目熱部署,而無需手動重啟項目 。
熱門部署:在修改完代碼之后,不需要重新啟動容器,就可以實現更新
熱部署的使用操作添加spring-boot-devtools依賴
<!-- 引入熱部署依賴 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional></dependency>復制代碼因為SpringBoot熱部署使用的是IDEA開發工具,添加熱部署依賴后沒有任何效果,接下來還需要針對IDEA開發工具進行熱部署相關的功能設置
IDEA工具熱部署設置
選擇IDEA工具界面的【File】->【Settings】選項,打開Compiler面板設置頁面
選擇Build下的Compiler選項,在右側勾選“Build project automatically”選項將項目設置為自動編 譯,單擊【Apply】→【OK】按鈕保存設置
在項目任意頁面中使用組合快捷鍵“Ctrl+Shift+Alt+/”打開Maintenance選項框,選中并打開 Registry頁面
列表中找到“compiler.automake.allow.when.app.running”,將該選項后的Value值勾選,用于指 定IDEA工具在程序運行過程中自動編譯,最后單擊【Close】按鈕完成設置
測試熱部署是否成功
結果一
為了測試配置的熱部署是否有效,接下來,在不關閉當前項目的情況下,將DemoController 類中的請 求處理方法hello()的返回值修改為“Hello Spring Boot13333”并保存,查看控制臺信息會發現項目能夠自動構建和編譯,說明項目熱部署生效
【springboot 熱更新 springboot生產環境熱更新】結果二