Z次元

这篇文章介绍了SpringBoot的热部署技术,解释了热部署的深层原理。文章还指导了如何在SpringBoot配置文件中引入Dev-tools依赖,并通过IDEA设置和浏览器配置来实现热部署。此外,还提到了自动编译的配置方法和关闭浏览器缓存的技巧,以提升开发效率。

Dev-tools

深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间。

  1. 在Springboot配置文件(pom.xml)中引入依赖:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
</dependency>
  1. 配置自动编译:

File | Settings | Build, Execution, Deployment | Compiler:
勾选Build project automatically
图片

  1. 配置热部署:

快捷键 Ctrl+Shift+Alt+/ ,选择Registry
勾选Compiler autoMake allow when app running
设置自动保存更新(静态资源)文件的时间为100:
compile.document.save.trigger.delay :100
compile.automake.trigger.delay :100
图片

  1. 关闭浏览器缓存

打开浏览器控制台,勾选禁用缓存
图片
或者下载浏览器热部署插件:Live Reload
图片

SpringBoot的自动编译

  1. 配置自动编译:

File | Settings | Build, Execution, Deployment | Compiler:
勾选Build project automatically
图片

  1. 配置热部署:

快捷键 Ctrl+Shift+Alt+/ ,选择Registry
勾选Compiler autoMake allow when app running
设置自动保存更新(静态资源)文件的时间为100:
compile.document.save.trigger.delay :100
compile.automake.trigger.delay :100
图片

  1. 开启SpringBoot自动编译

编辑SpringBoot的配置(Edit Configuration);
选择失去焦点和点击更新按钮时,自动更新类和资源文件;
On“updata”action表示点击更新按钮时执行;
On“frame” deactivation 表示失去焦点时执行;
图片

Update按钮如下图:(快捷键是Ctrl+F10)
图片

  1. 关闭浏览器缓存

打开浏览器控制台,勾选禁用缓存
图片
或者下载浏览器热部署插件:Live Reload
图片

评论区

这里还没有评论哦

快来发一条评论抢占前排吧

目录