Spring Boot devtool的使用前端
Spring Boot爲咱們提供了一個便捷的開發Spring Boot應用程序的環境,同時爲了方便咱們的開發Spring Boot應用程序,Spring Boot 推出了Spring Boot devtool的工具來方便咱們更加快速的開發和測試Spring Boot應用程序。 java
咱們將會從下面幾個方面來詳細講解Spring Boot devtool的功能。git
添加Spring Boot devtool依賴很簡單:github
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency>
這樣就添加好了,咱們能夠開始使用Spring boot devtool帶給咱們的優秀功能了。spring
Spring Boot爲咱們提供了不少自動配置來提升咱們開發的效率,好比會緩存模板引擎例如thymeleaf, 可是若是咱們在開發過程匯中可能須要快速的看到修改的結果,這個時候咱們就不須要這個緩存配置了,這時候咱們就須要配置:chrome
spring.thymeleaf.cache=false瀏覽器
若是添加了spring-boot-devtools, 上述的配置就不須要手動添加,devtool會自動幫咱們添加好。緩存
在開發過程當中,若是咱們修改了某些java文件,咱們可能須要重啓下項目來觀看修改後的結果,若是使用spring-boot-devtools,當classpath中有文件變更時候,devtools會自動幫你重啓服務器。springboot
注意,這裏的重啓的條件是classpath的文件要有變化,若是你在使用IDEA開發的話,請勾選「Build project automatically」 選項,以下圖示所示,不然你須要從新build項目來使重啓生效。
Live Reload主要針對資源文件的,咱們的APP啓動以後,能夠看到一個:服務器
o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
當資源文件變更的時候,方便前端刷新。
若是要用到這個live reload的功能,須要在chrome瀏覽器中安裝一個Remote Live Reload 的插件。
這個插件主要是經過引入的腳本livereload.js在 livereload 服務和瀏覽器之間創建了一個 WebSocket 鏈接。每當監測到文件的變更,livereload 服務就會向瀏覽器發送一個信號,瀏覽器收到信號後就刷新頁面,實現了實時刷新的效果。
spring-boot-devtools 提供了一個全局配置文件,方便你的開發環境配置,該文件在$HOME 目錄下面的 .spring-boot-devtools.properties 。
本文的例子能夠參考 https://github.com/ddean2009/learn-springboot2/tree/master/springboot-devtool
更多教程請參考 flydean的博客