Spring热部署tomcat项目

  1. 背景:我们在开发过程中,很多时候改一个java文件,比如输出一行log,改一个名称等等类似小的改动,需要重新启动Tomcat服务器,如果项目比较大的话,重启的时间成本将会非常的大。为了避免这样的消耗,我们需要在开发中设置热部署
    【注意,注意,注意,重要的话说3次】: 此类型的热部署,需要以Debug模式启动项目,Run方式测试貌似不好使
    闲话少叙,开始:
    首先,设置配置idea的设置:如下图,在tomcat设置中,部署Deployment中选择项目名:war ecploded格式的Artifact
    Spring热部署tomcat项目_第1张图片

    其次,回到Server选项页,设置其更新发生的事情,这块就是热部署的核心地方了:如图
    Spring热部署tomcat项目_第2张图片
    说明一下:
    On ‘Update’ action:这个是指手动点击更新的时候发生的事件,就是更新所有类文件和资源;那具体点那儿是手动更新呢?如下图:
    Spring热部署tomcat项目_第3张图片

    On frame deactivation: 这个表示在idea失去焦点的时候,也就是idea不在主界面的时候,或者说切换到其他界面的时候发生的事件,也是更新所有类文件和资源。

    那到此就全部设置完成了,以debug启动tomcat,然后找一个Controller,return一句话,然后,改动这个java文件,以以上方式测试,发现不用重新启动tomcat也可以获取最新改动的内容。


后记:
其实现在微服务比较盛行,springboot的热部署就不用这样了,直接加入依赖就可以了,如下图:

    <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-devtoolsartifactId>
            <optional>trueoptional>
    dependency>

———-当然,springboot的部署还有其他方式,以上这种最快捷,方便了。推荐哦。

你可能感兴趣的:(Framework)