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 Shutdown Hook场景使用及源码分析
Jun 15 Java/Android
Netty结合Protobuf进行编解码的方法
Jun 26 Java/Android
Spring Boot 实现敏感词及特殊字符过滤处理
Jun 29 Java/Android
解决Swagger2返回map复杂结构不能解析的问题
Jul 02 Java/Android
java固定大小队列的几种实现方式详解
Jul 15 Java/Android
mybatis3中@SelectProvider传递参数方式
Aug 04 Java/Android
Java实现给Word文件添加文字水印
Feb 15 Java/Android
Spring事务管理下synchronized锁失效问题的解决方法
Mar 31 Java/Android
Java实战之课程信息管理系统的实现
Apr 01 Java/Android
Android开发手册TextInputLayout样式使用示例
Jun 10 Java/Android
一文搞懂Java中的注解和反射
Jun 21 Java/Android
SpringBoot详解执行过程
Jul 15 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
德生S2000电路分析
2021/03/02 无线电
通过html表格发电子邮件
2006/10/09 PHP
PHP 定界符 使用技巧
2009/06/14 PHP
PHP中使用虚代理实现延迟加载技术
2014/11/05 PHP
jQuery 学习6 操纵元素显示效果的函数
2010/02/07 Javascript
基于jquery的下拉框改变动态添加和删除表格实现代码
2020/09/12 Javascript
前端开发过程中浏览器版本的两种判定方法
2013/10/30 Javascript
js和jquery使按钮失效为不可用状态的方法
2014/01/26 Javascript
JQuery限制复选框checkbox可选中个数的方法
2015/04/20 Javascript
jquery实现的用户注册表单提示操作效果代码分享
2015/08/28 Javascript
无需 Flash 使用 jQuery 复制文字到剪贴板
2016/04/26 Javascript
JavaScript遍历求解数独问题的主要思路小结
2016/06/12 Javascript
jquery仿ps颜色拾取功能
2017/03/08 Javascript
基于angular实现模拟微信小程序swiper组件
2017/06/11 Javascript
微信小程序实现收藏与取消收藏切换图片功能
2018/08/03 Javascript
vue多次循环操作示例
2019/02/08 Javascript
简述Vue中容易被忽视的知识点
2019/12/09 Javascript
js+canvas实现画板功能
2020/09/13 Javascript
[26:40]DOTA2上海特级锦标赛A组资格赛#1 Secret VS MVP.Phx第一局
2016/02/25 DOTA
使用python绘制常用的图表
2016/08/27 Python
numpy中的delete删除数组整行和整列的实例
2018/05/09 Python
PyTorch读取Cifar数据集并显示图片的实例讲解
2018/07/27 Python
Python判断两个文件是否相同与两个文本进行相同项筛选的方法
2019/03/01 Python
python视频按帧截取图片工具
2019/07/23 Python
python 控制Asterisk AMI接口外呼电话的例子
2019/08/08 Python
python实现PID算法及测试的例子
2019/08/08 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
2019/11/08 Python
django使用JWT保存用户登录信息
2020/04/22 Python
python pymysql库的常用操作
2020/10/16 Python
CSS实现限制字数功能当对象内文本溢出时显示省略标记
2014/08/20 HTML / CSS
药学专业大学生自荐信
2013/09/28 职场文书
物流专业大学应届生求职信
2013/11/03 职场文书
面试自我介绍演讲稿
2014/04/29 职场文书
2015年植树节活动总结
2015/02/06 职场文书
违反纪律检讨书范文
2015/05/07 职场文书
Python通用验证码识别OCR库ddddocr的安装使用教程
2022/07/07 Python