Spring boot devtools的正确使用姿势

Devtools.png

Spring boot程序开发中的Devtoolsr如何帮我们提高开发效率,下面一一介绍。

自动重启服务

使用前:改代码 -> 手动重启
使用后:自动探测代码变更 -> 自动重启

听起来没啥厉害的?实际上它重启快很多,原理是用了两个Classloader,具体不展开讲。


speed.png

自动重启只用了0.7秒!

自动刷新页面 Livereload

使用前:服务重启 -> 手动刷新页面 -> 看最终结果
使用后:自动刷新浏览器页面

此功能需要浏览器(Firefox, Chrome, Safari)安装插件, 下载地址 , 这个插件和Devtools的livereload server连接。重启后livereload server会通知插件刷新页面。
以上就是Devtools的主要功能。

Devtools 具体使用方式

POM引入依赖


    org.springframework.boot
    spring-boot-devtools
    true

其他调整

  • 我项目中前后端分离,springboot程序只提供数据接口,所以不需要自动刷新页面。禁用livereload,开发中启动速度更快。
  • 使用了Mybatis, 修改xml后也需要重启。需要把mybatis的xml文件也加入到devtools的监控列表中
    以上两点对应的application.properties修改如下:
# 禁用livereload服务
spring.devtools.livereload.enabled=false
spring.devtools.restart.additional-paths=mappers/**
  • 最后喜欢Intellij IDEA的自动保存,改完代码快捷键触发build 项目,springboot自动重启


    build.png

你可能感兴趣的:(Spring boot devtools的正确使用姿势)