SpringBoot之使用devtools进行热部署

spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot应用。

devtools的原理

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

实现只需要两步

1、首先在pom.xml文件中添加依赖

2、在application.properties文件中添加配置使热部署生效

#关闭缓存,即时刷新
spring.thymeleaf.cache=true
#热部署生效
spring.devtools.restart.enabled=true
#设置重启的目录,添加哪个目录的文件需要restart
spring.devtools.restart.additional-paths=src/main/java
#排除哪个目录的文件不需要restart
#classpath目录下的WEB-INF文件夹内容修改不重启
spring.devtools.restart.exclude=static/**,public/**,WEB-INF/**

以上

To be continued...

猜你喜欢

转载自blog.csdn.net/qq_34964197/article/details/81842880