目前的Springboot,当发生了任何修改之后,必须关闭后再启动应用类才能够生效,显得略微麻烦。Springboot提供了热部署的方式,当发现任何类发生了改变,马上通过JVM类加载的方式,加载最新的类到虚拟机中。这样就不需要重新启动也能看到修改后的效果了
做法很简单,在pom.xml中新增加一个依赖就行了
& lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-devtools & lt; optional> true& lt; !——这个需要为真正的热部署才有效——比; & lt;/dependency> & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比; & lt;项目xmlns=" http://maven.apache.org/POM/4.0.0 " xmlns: xsi=" http://www.w3.org/2001/XMLSchema-instance " xsi: schemaLocation=" http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”比; & lt; modelVersion> 4.0.0 & lt; groupId> com.how2java & lt; artifactId> springboot & lt; version> 0.0.1-SNAPSHOT & lt; name> springboot & lt; description> springboot & lt; packaging> war & lt; parent> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-parent & lt; version> 1.5.9.RELEASE & lt;/parent> & lt; dependencies> & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-web & lt;/dependency> & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-tomcat & lt; scope> provided & lt;/dependency> & lt; dependency> & lt; groupId> junit & lt; artifactId> junit & lt; version> 3.8.1 & lt; scope> test & lt;/dependency> & lt; !——servlet依赖。——比; & lt; dependency> & lt; groupId> javax.servlet & lt; artifactId> javax.servlet-api & lt; scope> provided & lt;/dependency> & lt; dependency> & lt; groupId> javax.servlet & lt; artifactId> jstl & lt;/dependency> & lt; !- - - tomcat的支持。——比; & lt; dependency> & lt; groupId> org.apache.tomcat.embed & lt; artifactId> tomcat-embed-jasper & lt; scope> provided & lt;/dependency> & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-devtools & lt; optional> true& lt; !——这个需要为真正的热部署才有效——比; & lt;/dependency> & lt;/dependencies> & lt; properties> & lt; java.version> 1.8 & lt;/java.version> & lt;/properties> & lt; build> & lt; plugins> & lt; plugin> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-maven-plugin & lt;/plugin> & lt;/plugins> & lt;/build> & lt;/project>>之前
重新启动应用程序,然后随便修改一下HelloController,就会如图所示观察到控制台的自动重启现象
<强>下面看下SpringBoot自动重启,热启动强>
<强> SpringBoot自动重启的两种方法:强>
1)在项目的pom中直接添加插件,如下:
& lt; build> & lt; plugins> & lt; plugin> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-maven-plugin & lt; dependencies> & lt; !——热部署——比; & lt; dependency> & lt; groupId> org.springframework & lt; artifactId> springloaded & lt; version> 1.2.6.RELEASE & lt;/dependency> & lt;/dependencies> & lt;/plugin> & lt;/plugins> & lt;/build>>之前当对类路径(包含javadiamante以及其他配置文件等)里的文件操作完成保存的时候,项目会自动重启,免去了手动重启项目的麻烦;
2)使用springBoot为我们提供的工具类,在pom中添加依赖;
& lt; dependencys> & lt; !——SpringBoot开发工具——比; & lt; dependency> & lt; groupId> org.springframework.bootspringboot自动重启的简单方法