zoukankan      html  css  js  c++  java
  • Spring Boot 热部署

    在Spring Boot 中提供了spring-boot-devtools开发工具,实现了SpringBoot的热部署,热部署就是在项目正在运行的时候修改代码,却不需要重新启动项目,大大提高了开发效率。
    热部署原理
        大家都知道在项目开发过程中,常常会改动页面数据或者修改数据结构,为了显示改动 效果,往往需要重启应用查看改变效果,其实就是重新编译生成了新的 Class 文件,这个 文件里记录着和代码等对应的各种信息,然后 Class 文件将被虚拟机的 ClassLoader 加载。
        而热部署正是利用了这个特点,它监听到如果有 Class 文件改动了,就会创建一个新 的 ClaassLoader 进行加载该文件,经过一系列的过程,最终将结果呈现在我们眼前。
    devtools 应用
    1.添加依赖 
    首先在 pom.xml 中添加 devtools 依赖,代码如下:
       <dependency>
            <groupId>org. springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
    
    
    2.application.yml 中配置一下 devtools
     以下配置用于自定义配置热部署,也可不设置,代码如下:
    spring :
            devtools :
                restart :
                    enabled: true#设置开启热部署
                    additional-paths: src/main/java #重启目录
                    exclude: wEB一工NF/**#指定目录不更新
                freemarker :
                    cache: false#页面不加载缓存,修改即时生效
    IDEA 中配置 
    当我们修改了类文件后,idea 不会自动编译,得修改 idea 设置。 
    1)File-Settings-Compiler-Build Project automatically

    2)ctrl + shift + alt + / ,选择 Registry,勾上 Compiler autoMake allow when app running, 如图

  • 相关阅读:
    splice方法以及如何实现数组去重
    数组的几个重要方法以及如何清空数组
    for-in遍历
    浅谈json和数组的区别
    js实现查找替换关键字的效果
    js实现查找关键字效果
    原生js中大小写转化以及split分割字符串方法
    eclipse没有Web项目和Server选项
    【学习】005 线程池原理分析&锁的深度化
    什么是CPU密集型、IO密集型?
  • 原文地址:https://www.cnblogs.com/tszr/p/15449649.html
Copyright © 2011-2022 走看看