Spring Boot DevTools 全局配置学习指南


Posted in Java/Android onMarch 31, 2022

? 一、直接重启项目与devtools重启的区别

Spring Boot DevTools 全局配置学习指南

我们在加入devtools依赖后就可以使用第一个按钮,而第二个按钮是我们平常使用最多的按钮,两者最大的区别就是再修改项目代码后重启项目的部分不一样,第一个按钮(锤子按钮)是重新加载所有已经改变的类和一些用户编写的代码,不会重新加载第三方的插件和依赖以及库,很省时间;但是第二个按钮就会重新加载项目的所有资源,很浪费cpu资源;所以我们开发通常会使用devtools来辅助开发

? 二、DevTools配置

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

只要代码修改之后,点击编译按钮(绿色锤子)就会重启项目,重新加载所有已经改变的类和一些用户编写的代码,不会重新加载第三方的插件和依赖以及库

? 三、DevTools全局配置

Spring Boot DevTools 全局配置学习指南

在系统的当前用户的目录下新建一个文件名为.spring-boot-devtools.properties的文件,里面就可以编写application.properties中关于devtools的配置,不过与application.properties不同的是全局配置文件是所有启动的项目都会去加载这个配置文件,而application.properties只是本项目才会去加载

Spring Boot DevTools 全局配置学习指南

? 四、trigger-file控制重启行为

?? 4.1、配置

以下二者选一即可,前者项目配置,后者全局配置

application.properties配置

spring.devtools.restart.trigger-file=.reloadtrigger

.spring-boot-devtools.properties配置

spring.devtools.restart.trigger-file=.reloadtrigger

?? 4.2、新建文件.reloadtrigger

Spring Boot DevTools 全局配置学习指南

文件里随便填入一些字符

?? 4.3、测试类

@RestController
public class HelloController {
    @GetMapping("/hello")
    public String getdev(){
        return "hello  devtools  123";
    }
}

?? 4.4、控制重启 Controller类

Spring Boot DevTools 全局配置学习指南

.reloadtrigger文件

Spring Boot DevTools 全局配置学习指南

请求http://localhost:8080/hello

Spring Boot DevTools 全局配置学习指南

之后我们修改Controller代码,但我们并不修改.reloadtrigger文件

@RestController
public class HelloController {
    @GetMapping("/hello")
    public String getdev(){
        return "hello  devtools  1234";
    }
}

重新编译之后:

Spring Boot DevTools 全局配置学习指南

结果仍不改变

我们现在修改.reloadtrigger文件

Spring Boot DevTools 全局配置学习指南

重新编译:

Spring Boot DevTools 全局配置学习指南

Spring Boot DevTools 全局配置学习指南

项目重启,并且重新更新,将修改后的代码生成

?? 4.5、总结

控制重启行为就是不再是devtools在代码被修改之后自动去重启,而是由我们人工通过.reloadtrigger文件的修改来控制项目自动的重启行为

到此这篇关于Spring Boot DevTools 全局配置的文章就介绍到这了,更多相关Spring Boot DevTools内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Java/Android 相关文章推荐
Java输出Hello World完美过程解析
Jun 13 Java/Android
探讨Java中的深浅拷贝问题
Jun 26 Java/Android
深入理解java.lang.String类的不可变性
Jun 27 Java/Android
利用Java设置Word文本框中的文字旋转方向的实现方法
Jun 28 Java/Android
Java SSH 秘钥连接mysql数据库的方法
Jun 28 Java/Android
HashMap实现保存两个key相同的数据
Jun 30 Java/Android
JUnit5常用注解的使用
Jul 02 Java/Android
Java Socket实现多人聊天系统
Jul 15 Java/Android
JPA 通过Specification如何实现复杂查询
Nov 23 Java/Android
Java生成日期时间存入Mysql数据库的实现方法
Mar 03 Java/Android
Elasticsearch Recovery 详细介绍
Apr 19 Java/Android
Java结构型设计模式之组合模式详解
Sep 23 Java/Android
Spring事务管理下synchronized锁失效问题的解决方法
Mar 31 #Java/Android
Spring依赖注入多种类型数据的示例代码
Mar 31 #Java/Android
springboot layui hutool Excel导入的实现
spring注解 @PropertySource配置数据源全流程
Mar 25 #Java/Android
Netty客户端接入流程NioSocketChannel创建解析
Mar 25 #Java/Android
Java 超详细讲解设计模式之中的抽象工厂模式
Netty分布式客户端处理接入事件handle源码解析
You might like
PHP文件上传实例详解!!!
2007/01/02 PHP
php下载远程文件类(支持断点续传)
2008/11/14 PHP
php自定义函数截取汉字长度
2014/05/15 PHP
成为好程序员必须避免的5个坏习惯
2014/07/04 PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
2016/01/04 PHP
使用按钮控制以何种方式打开新窗口的属性介绍
2012/12/17 Javascript
利用javaScript实现点击输入框弹出窗体选择信息
2013/12/11 Javascript
javascript数组输出的两种方式
2015/01/13 Javascript
JS实现双击屏幕滚动效果代码
2015/10/28 Javascript
JQuery datepicker 用法详解
2015/12/25 Javascript
jQuery常见的选择器及用法介绍
2016/12/20 Javascript
如何使用bootstrap框架 bootstrap入门必看!
2017/04/13 Javascript
vue使用 better-scroll的参数和方法详解
2018/01/25 Javascript
JavaScript函数apply()和call()用法与异同分析
2018/08/10 Javascript
在vue项目中正确使用iconfont的方法
2018/09/28 Javascript
在node中使用jwt签发与验证token的方法
2019/04/03 Javascript
javascript History对象原理解析
2020/02/17 Javascript
Vue父组件向子组件传值以及data和props的区别详解
2020/03/02 Javascript
在Python中操作字典之fromkeys()方法的使用
2015/05/21 Python
Ruby使用eventmachine为HTTP服务器添加文件下载功能
2016/04/20 Python
Python爬虫常用库的安装及其环境配置
2018/09/19 Python
pytorch对可变长度序列的处理方法详解
2018/12/08 Python
Django实现将一个字典传到前端显示出来
2020/04/03 Python
Html5饼图绘制实现统计图的方法
2020/08/05 HTML / CSS
美国存储和组织商店:The Container Store
2017/08/16 全球购物
美国体育用品商店:Paragon Sports
2017/10/08 全球购物
JAVA中运算符的分类及举例
2015/09/12 面试题
详细的大学生创业计划书模板
2014/01/27 职场文书
数学教育专业求职信
2014/07/22 职场文书
党员学习中共十八大报告思想汇报
2014/09/15 职场文书
2014年资料员工作总结
2014/11/18 职场文书
2015年医生个人工作总结
2015/04/25 职场文书
农村环境卫生倡议书
2015/04/29 职场文书
离婚起诉书范本
2015/05/18 职场文书
ORACLE数据库对long类型字段进行模糊匹配的解决思路
2021/04/07 Oracle
css中z-index: 0和z-index: auto的区别
2021/08/23 HTML / CSS