springboot提供了热部署,所谓热部署就是当你修改了文件代码,不用重新去启动服务器,而你只要重新build一下当前项目就可以重新编译了。而这就是热部署。
其实springboot热部署就是通过一个jar包依赖实现的,它就是一个工具,只需要在pom文件中添加一个依赖就可实现。
添加如下依赖:
<!-- springbooo热部署插件--><!-- 热部署插件的原理:主要有两个类加载器:base classloader 和restart classloader base classloader用于加载那些不会变化的类,例如各种第三方依赖, 而restart classloader用来加载那些变化的类,例如你修改了的类。 springboot中热部署的原理:当代码发生了变化时,base classloader不变,restart classloader被废弃了,被另一个restart classloader替代了。 在整个过程中只是加载了变化了的类而不是全部重新加载,所以速度会更快。 devtools中默认嵌入了livereload服务器,利用它可以实现静态资源的热部署。 LiveReload可以在静态资源发生变化时自动触发浏览器更新, LiveReload支持Chrome,Firefox以及Safari。 它就是一个插件只需要在Chrome浏览器或者Firefox浏览器添加一个插件就可以了。 LiveReload是和浏览器的选项卡绑定在一起的,在哪个选项卡打开就在哪个选项卡生效。 如果安装并且启动了LiveReload插件但是又不想使用则可以在springboot配置文件中添加 spring.devtools.livereload.enabled=false即可关闭静态资源的热部署加载。--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <version>2.1.3.RELEASE</version> <scope>runtime</scope> <optional>true</optional> </dependency>
来源:https://www.cnblogs.com/jasonboren/p/11140942.html