精华内容
下载资源
问答
  • 2019-05-07 10:56:45

    1. 热部署与热加载区别

    热部署:重新加载项目应用,全局部署,会清空session以及释放内存。(如果项目中使用了第三方用户框架[如:shiro-spring],可能会无法正常使用)

    热加载:java类若发生更改,则局部进行加载,不清空session,不释放内存

    2. 如何配置

    热部署的方式spring-boot-devtools,网上很多介绍,如果框架结合了thymeleaf,相应的配置也有

    这里重点说下springloaded的配置

    在maven的配置文件中增加

        <build><plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <dependencies>
                    <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>springloaded</artifactId>
                        <version>1.2.8.RELEASE</version>
                    </dependency>
                    </dependencies>
                </plugin></plugins></build>

    在项目中右键-->Run As-->Run Configurations..打开配置对话框-->在Arguments的VMarguments选项中配置【如果没有相对应的Application选项,要选择创建一个项目的application选项】

    -javaagent:C:/Users/learnworm/.m2/repository/org/springframework/springloaded/1.2.8.RELEASE/springloaded-1.2.8.RELEASE.jar  -noverify

    开始测试【选择一个controller类,在方法中输入日志,观察日志输出变化即可】

    @RestController
    @RequestMapping(value="/api/dict")
    @Api("wmDicController水价接口")
    public class WmDicController extends BaseController {

        @Autowired
        private DictServiceImpl dictServiceImpl;
        @ApiOperation(value="查询水价")
        @RequestMapping(value="/listDict",method=RequestMethod.GET)
        @ResponseBody
        public List<WmDict> getListWmDict() {
            System.out.println("=====getListWmDict==222============");
            return dictServiceImpl.ListDict();
        }
    }

     

    更多相关内容
  • SpringBoot热加载

    2021-01-19 11:43:58
    其实可以通过一些插件,实现修改之后的热加载,并且只加载修改部分,从而也提高了效率。 方式一:使用JRebel //todo 方式二:使用spring-boot-devtools //todo 方式三:使用springloaded //todo ...

    使用SpringBoot开发的时候,修改完程序之后,需要手动点击重启,才能让修改生效,比较麻烦,也占用了更多的时间。

    其实可以通过一些插件,实现修改之后的热加载,并且只加载修改部分,从而也提高了效率。

    方式一:使用JRebel

                  JRebel是一款JVM插件,它使得Java代码修改后不用重启系统,立即生效。
    IDEA上原生是不支持热部署的,一般更新了 Java 文件后要手动重启 Tomcat 服务器,才能生效,浪费时间浪费生命。
    目前对于idea热部署最好的解决方案就是安装JRebel插件。

    第一步:安装插件

    在这里插入图片描述

    第二步:在线GUID地址:在线生成GUID

    网址:在线GUID地址
    在这里插入图片描述
    如果失效刷新GUID替换就可以!

    服务器地址:https://jrebel.qekang.com/{GUID}

    第三步:打开jrebel 如下所示面板,选择Connect to online licensing service

    在这里插入图片描述
    安装成功之后就可以通过JRebel启动项目。这样修改完Java代码后,就可以通过快捷键 Ctrl+shift+F9 而不再需要重启站点这样繁琐浪费时间的操作了。

    相关设置

    设置成离线工作模式

    在这里插入图片描述
    在这里插入图片描述

    设置自动编译

    要想实现热部署,首先需要对Intellij按如下进行设置:

    1. 由于JRebel是实时监控class文件的变化来实现热部署的,所以在idea环境下需要打开自动变异功能才能实现随时修改,随时生效。
      在这里插入图片描述
    2. 打开运行时编译

    设置compiler.automake.allow.when.app.running

    快捷键ctrl+shift+A,搜索:registry
    或者
    按快捷键 Ctrl+Shift+Alt+/ ,选择 Registry
    在这里插入图片描述
    在这里插入图片描述

    使用

    运行项目时要点击图中红框中的按钮,即可运行:
    在这里插入图片描述
    第一个按钮是Run,第二个按钮是Debug。

    修改代码(只测试了Java代码的修改)后,完成加载以后,就已经实现了热更新效果。

     

    方式二:使用springloaded

    第一步:pom文件中添加依赖

    <dependency> 
          <groupId>org.springframework</groupId> 
          <artifactId>springloaded</artifactId> 
          <version>1.2.4.RELEASE</version>
      </dependency> 

    第二步:在spring的启动配置里面

    第三步:在VM options里面输入下面一段代码

    -javaagent:F:\m2\mcms\repository\org\springframework\springloaded\1.2.8.RELEASE\springloaded-1.2.8.RELEASE.jar -noverify

    格式:  -javaagent: "jar包的位置" -noverify

    编译之后修改的代码可以生效

     

    方式三:使用spring-boot-devtools

    第一步:pom.xml添加依赖

    <!-- 热部署方法1spring boot devtools 依赖包. -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
                <optional>true</optional>
               <scope>true</scope>
            </dependency>
    
    
    
    <!-- 这是spring boot devtool plugin 热部署1常用-->
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <configuration>
                          <!--fork :  如果没有该项配置,这个devtools不会起作用,即应用不会restart -->
                        <fork>true</fork>
                    </configuration>
                </plugin>
    

    application.yml配置文件中添加:

    spring:
        devtools:
            restart:
                #热部署生效
              enabled: true
                #设置重启的目录
                #additional-paths: src/main/java
                #classpath目录下的WEB-INF文件夹内容修改不重启
              exclude: WEB-INF/**

     

    设置WEB-INF下的jsp修改不需要重启。

    当我们修改了java类后,IDEA默认是不自动编译的,而spring-boot-devtools又是监测classpath下的文件发生变化才会重启应用,所以需要设置IDEA的自动编译:

    这样就可以完成部署了。

     

     

    上述三种热加载方式:

    (1)jrebel需要在有网络的环境进行注册,无网环境配置稍显负载

    (2)springloaded方式最简单,使用springloader这种方式,这并不是所有的代码都能够热部署的。

    (3)使用devtools这种方式可以实现大部分代码的热部署,但是和数据库连接池有冲突,容易造成数据库连接池关闭

    展开全文
  • springboot热加载配置

    2020-10-28 11:00:26
    所谓的热加载就是当java代码改变时,自动重启项目,你直接刷新页面就行了, 直接上吧! 第一步 <!--热加载--> <dependency> <groupId>org.springframework.boot</groupId> <...

    文章目录

    所谓的热加载就是当java代码改变时,自动重启项目,你直接刷新页面就行了,

    直接上吧!

    第一步

    <!--热加载-->
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-devtools</artifactId>
    			<scope>runtime</scope>
    			<optional>true</optional>
    		</dependency>
    

    然后加上一下代码使配置生效

    <configuration>
    <fork>true</fork><!-- 如果没有该配置,热部署的devtools不生效 -->
    </configuration>
    

    第二步
    在配置文件中加入配置

    #热部署生效
    spring.devtools.restart.enabled=true
    #设置重启的目录,检索目录(resources/static、resources/templates)
    spring.devtools.restart.additional-paths= src/main/java
    #classpath目录下的WEB-INF文件夹内容修改不重启
    spring.devtools.restart.exclude= WEB-INF/**
    

    第三步
    IDEA 配置修改

    File→Settings…→Build,Execution,Deployment→Compiler→勾选Buildprojectautomatically→确定

    在这里插入图片描述

    Ctrl+Shift+A→搜索Registry并选择Registry….→勾选compiler.automake.allow.when.app.running

    在这里插入图片描述

    展开全文
  • springboot热加载

    2021-05-12 10:20:49
    在pom.xml中加入 <dependency> <groupId>org.... spring: devtools: restart: enabled: true #设置开启热部署 additional-paths: src/main/java #重启目录 exclude: WEB-INF/** 注意格式哦,格式错就错了 热加载OK啦

    在pom.xml中加入
    在这里插入图片描述

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
        <scope>runtime</scope>
    </dependency>
    

    后面记得更新包哦!!!

    在这里插入图片描述

    spring:
      devtools:
        restart:
          enabled: true  #设置开启热部署
          additional-paths: src/main/java #重启目录
          exclude: WEB-INF/**
    

    注意格式哦,格式错就错了
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    热加载OK啦
    在这里插入图片描述

    展开全文
  • springBoot热加载设置

    2020-07-03 22:31:58
    我们在开发springBoot微服务的时候,在代码编辑的时候每次改了代码都需要重启,这样会很耗费时间,因此在IDEA中需要热加载处理下。 第一步,需要添加热加载包。 <dependency> <groupId>org.spring...
  • linux yum安装指定版本mysql或php...1、下载mysql rpm包 cd /usr/local/src ...2、安装下载的rpm包 yum localinstall mysql80-community-release-el7-3.noarch.rpm 或 sudo rpm -Uvh mysql80-community-release-el6-n.noar
  • Springboot 热加载/部署

    2020-10-29 15:32:24
    部署不会用在生产环境,但对于程序员开发的效率,还是有一定帮助的,所谓的部署,就是在应用程序在不停止的情况下,实现新的部署 spring-boot-devtools 是一个为开发者服务的一个模块,其中最重要的功能就是自动...
  • Springboot热加载和配置文件

    千次阅读 2020-02-14 20:07:43
    热加载 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true<...
  • 主要介绍了Springboot热部署实现原理及实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 最近在学spring框架,使用的是springboot可以省去很多的配置...于是就找到了springboot热加载。操作还是很简单的。这里总结下,方便复习回顾和总结。 首先呢,记得引入依赖,大概需要这么几个 <depend...
  • springboot 热加载

    2018-02-23 09:56:03
    修改代码后不需要重启服务, 自动加载修改的内容。 修改内容后restart加载加载会变动的资源。 那些第三方的包不会被重新加载, 所以可以提高重启速度pom.xml配置依赖配置: &lt;dependency&gt; &lt;...
  • springloaded springboot 热加载
  • Java笔记:SpringBoot热部署与热加载

    千次阅读 2020-11-12 09:55:37
    1、Java热部署与热加载联系 不重启服务器编译/部署项目 基于Java的类加载器实现 2、Java热部署与热加载区别 2.1、部署方式 热部署在服务器运行时重新部署项目 热加载在运行时重新加载class 2.2、实现原理
  • 热部署与热加载:热部署和热加载都是基于类加载器实现的,热加载是服务器监听class等文件的改变然后对改变的文件进行局部加载,所以不会删除session,也不会释放内存。热部署就是全局部署,会清空session以及释放...
  • 配置热加载环境2.配置热部署环境 1.配置热加载环境 (1)Pom.xml文件中加入配置 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</...
  • 使用IDEA调试项目时,每次运行项目都需要1-2分钟,极大影响了调试效率,以下介绍一种通过springboot配置,实现热加载,具体过程如下: 引入相关依赖。打开pom文件,添加以下依赖 <dependency> <groupId&...
  • springboot实现热加载

    2019-08-28 14:46:37
    热加载是指在开发环境中开发者更改了代码,运行时重新加载 .class文件,基于字节码的更改,在不需要重新启动本地服务器,不释放内存的情况下,重新加载最新的代码。 ...
  • idea springboot热加载

    2019-05-01 22:43:44
    --部署配置--> <groupId>org.springframework.boot <artifactId>spring-boot-maven-plugin <!--fork:如果没有该项配置,整个devtools不会起作用--> <fork>true 设置idea自动编译 4、 快捷键 ctrl ...
  • springboot热加载 10

    2019-04-08 21:23:47
    springboot是微服务的前提,因而部署是其必要的一个特性之一。本文将讲述springboot如何实现部署。 1、环境约束 win10 64位操作系统 idea2018.1.5 maven-3.0.5 jdk-8u162-windows-x64 2、前提约束 完成...
  • 为了避免每次改动后重新启动的繁琐引入spring的热加载和热部署  一.SpringBoot热部署的原理  spring-boot-devtools是一个为开发者服务的一个模块,其中最重要的功能就是自动应用代码更改到最新的App上面去。...
  • SpringBoot 热加载以及添加debug调试

    万次阅读 2017-11-30 18:04:18
    Springboot有两种热加载的方式,一种是spring-boot-devtools,但个人感觉这种方式效果太差,所以这里就不介绍了。 另外一种是springloaded,这个要搭配Maven来使用,所以要先装好Maven。
  • springboot 热部署一、热部署二、IDEA中实现springboot热部署1、pom文件依赖2、project配置文件修改3、IDEA配置修改三、测试验证四、实现原理 之前一直在用热部署,但没有总结,网上有很多类似文章,我这里用最简洁...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,773
精华内容 4,709
关键字:

springboot热加载

spring 订阅
友情链接: 4536252.rar