小言_互联网的博客

【Spring Boot实战与进阶】Spring Boot Devtools实现热部署

286人阅读  评论(0)

Spring Boot是很优秀的框架,它的出现简化了新Spring应用的初始搭建以及开发过程,大大减少了代码量,目前已被大多数企业认可和使用。这个专栏将对Spring Boot框架从浅入深,从实战到进阶,不但我们要懂得如何去使用,还要去剖析框架源码,学习其优秀的设计思想。

汇总目录链接:【Spring Boot实战与进阶】学习目录

一、简介

  在我们平时的日常开发工作中,修改了Java代码或者配置文件的时候,必须手动重启项目才能生效。
  所谓的热部署就是在你修改了后端代码后不需要手动重启,工具会帮你快速的自动重启使其生效。其深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间。

二、热部署的使用

1、引入依赖

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

  optional=true,依赖不会传递, 该项目依赖devtools;之后依赖boot项目的项目如果想要使用devtools,需要重新引入。

2、IDEA配置

2.1、勾选自动编译

2.2、按组合键ctrl + shift + alt + /,然后选择Registry,勾上 Compiler.autoMake.allow.when.app.running。


转载:https://blog.csdn.net/sinat_27933301/article/details/103789218
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场