一、devtools是什么
Spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot应用。
二、项目搭建
本文是采用IDEA搭建的Spring Boot应用,通过spring-boot-devtools配置,可以支持修改java文件会自动重启程序,一些资源无需触发重启,例如thymeleaf模板文件就可以实时编辑。默认情况下,更改/META-INF/maven,/META-INF/resources ,/resources ,/static ,/public 或/templates下的资源不会触发重启,而是触发livereload。devtools模块包含一个嵌入的livereload服务器,可以在资源变化时用来触发浏览器刷新。浏览器需要在livereload.com下载安装扩展。 例如Chrome浏览器在应用商店安装livereload插件后,在要自动刷新的页面点击对应的图标,启动应用后更新页面内容或者css等都会触发页面自动刷新。
三、livereload
livereload 通过引入的脚本livereload.js在 livereload 服务和浏览器之间建立了一个 WebSocket 连接。每当监测到文件的变动,livereload 服务就会向浏览器发送一个信号,浏览器收到信号后就刷新页面,实现了实时刷新的效果。每次启动时,需要点击对应的图标,如下图所示。
本文介绍了SpringBoot的devtools模块,用于实现应用的热部署,提升开发效率。通过配置devtools,修改Java代码可自动重启应用,而资源文件如Thymeleaf模板则能实现实时刷新。文章详细讲解了devtools的livereload功能,以及如何在IDEA中配置和使用,包括pom.xml和yml配置、IDEA设置、livereload插件安装和测试步骤。
订阅专栏 解锁全文
2967

被折叠的 条评论
为什么被折叠?



