springboot - 热部署

传统情况下, 我们用idea运行springboot程序时, 如果我们需要修改类里的方法,或者其他信息

我们需要修改完保存,并且重启springboot,有时候会很浪费时间。

那么下面我们来使用springboot热部署来解决重启的问题

其实很简单 只需要引入一个maven依赖

   <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>

然后运行程序,我们需要改代码的时候,只需要修改后重新变一下就可以看到更改后的效果

image.png

devtools的原理

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

推荐阅读更多精彩内容

  • 本地开发过程中,一个小小的功能变化,测试的时候,都需要重启应用,这样启动项目的时间,可能比改动需要的时间还多,sp...
    时之令阅读 185评论 0 1
  • 在SpringBoot中启用热部署是非常简单的一件事,因为SpringBoot为我们提供了一个非常方便的工具spr...
    墨色尘埃阅读 151评论 0 0
  • devtools的原理 深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类...
    Hi哈娃娃阅读 161评论 1 4
  • 在SpringBoot中启用热部署是非常简单的一件事,因为SpringBoot为我们提供了一个非常方便的工具spr...
    Fredia_Wang阅读 405评论 0 2
  • 相信做开发的程序猿们都体验过修改一次代码就要重启一次的滋味吧简直不要太爽,也比较影响工作效率,本来热部署准备后面介...
    意浅离殇阅读 150评论 0 0