不用缓存安装_Spring Boot 五种热部署方式,再也不用老重启了!

news/2024/7/2 0:51:38

315d5a7777b88e6d3743dabb0e2bd3ad.png

1、模板热部署

在 Spring Boot 中,模板引擎的页面默认是开启缓存的,如果修改了页面的内容,则刷新页面是得不到修改后的页面的,因此我们可以在application.properties中关闭模版引擎的缓存,如下:

Thymeleaf的配置:

spring.thymeleaf.cache=false

FreeMarker的配置:

spring.freemarker.cache=false

Groovy的配置:

spring.groovy.template.cache=false

Velocity的配置:

spring.velocity.cache=false

2、使用调试模式Debug实现热部署

此种方式为最简单最快速的一种热部署方式,运行系统时使用Debug模式,无需装任何插件即可,但是无发对配置文件,方法名称改变,增加类及方法进行热部署,使用范围有限。

3、spring-boot-devtools

在 Spring Boot 项目中添加 spring-boot-devtools依赖即可实现页面和代码的热部署。

如下:

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId></dependency>

此种方式的特点是作用范围广,系统的任何变动包括配置文件修改、方法名称变化都能覆盖,但是后遗症也非常明显,它是采用文件变化后重启的策略来实现了,主要是节省了我们手动点击重启的时间,提高了实效性,在体验上会稍差。

spring-boot-devtools 默认关闭了模版缓存,如果使用这种方式不用单独配置关闭模版缓存。

4、Spring Loaded

此种方式与Debug模式类似,适用范围有限,但是不依赖于Debug模式启动,通过Spring Loaded库文件启动,即可在正常模式下进行实时热部署。此种需要在 run confrgration 中进行配置。

5、JRebel

Jrebel是Java开发最好的热部署工具,对 Spring Boot 提供了极佳的支持,JRebel为收费软件,试用期14天。,可直接通过插件安装。

来源:若离x my.oschina.net/ruoli/blog/1590148

升职加薪必备!运维工程师打怪升级进阶成神之路

如有错误或其它问题,欢迎小伙伴留言评论、指正。如有帮助,欢迎点赞+转发分享。

更多相关开源技术文章,请持续关注民工哥知乎技术专栏。

我是民工哥,一个爱折腾的IT技术老司机,欢迎关注我,我们一起学习,共同成长!!


http://www.niftyadmin.cn/n/4334235.html

相关文章

Netweaver和CloudFoundry的服务器日志

Netweaver 事务码SMICM&#xff0c;Goto->HTTP Plug-In->Server Logs: CloudFoundry 假设我部署本地应用到CloudFoundry之后&#xff0c;应用的状态变为CRASHED。然而从应用的控制台看不出太多有用的信息。 此时可以使用命令cf logs --recent来查看服务器端日志&#xff…

win10猎豹wifi间歇性掉线_无线WiFi间歇性掉线怎么办 无线WiFi间歇性掉线解决方法【详细介绍】...

正在看直播无线WiFi忽然掉线&#xff0c;游戏玩到决胜时刻网络问题聊个微信都间歇性的“网络连接不可用”&#xff0c;今天&#xff0c;小编将为大家讲解无线WiFi间歇性掉线如何搞定。一、避免信号干扰普通的家用路由器是在2.4G频段下工作的&#xff0c;而微波炉、电视机、冰箱…

PyCharm入门教程——添加、删除和移动代码元素

2019独角兽企业重金招聘Python工程师标准>>> PyCharm最新版本下载 JetBrains PyCharm是一种Python IDE&#xff0c;其带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具。此外&#xff0c;该IDE提供了一些高级功能&#xff0c;以用于Django框架下的专业…

延时消息_一文玩转消息中间件rabbitmq延时消息(附带源码)

我是码农小胖哥&#xff0c;之前探讨了springboot 集成 rabbitmq 以及开启ack模式 传送门&#xff1a;10分钟就能轻松入门消息中间件rabbitmq(附带教学源码)接着该搞一下死信队列了业务场景有时候 我们可能有些场景&#xff0c;不能让消费方那么快拿到消息。比如 10分钟后再告知…

我的建站经历(一)

转载自我的博客:https://blog.ljyngup.com 我的建站经历(一) 我建站时的状况为&#xff1a; 1.学生党 2.未满十八岁 3.预算不高(大约200左右) 4.不想花太多精力在建站上&#xff0c;想快速建站开始写博客。 5.不以盈利为目的(以后发展好了另说) 6.想拥有一个属于自己的…

调用登录_SpringSecurity在前后端分离项目中自定义登录及源码分析

课纲自定义登录流程源码分析常见问题总结登录功能背景项目登录功能在没有使用SpringSecurity之前&#xff0c;流程如下&#xff1a;用户输入用户名和密码并提交到Controller在Controller层调用service层校验是否正确如果正确&#xff0c;将用户信息写入session返回用户的json数…

es6新的方法

var o {a:1}Object.keys(o); //返回对象自身的所有可枚举的属性的键名Object.assign() //忽略不可枚举的属性&#xff0c;只拷贝对象自身的可枚举属性Array.from() //将类似数组的对象&#xff0c;不管对象有没有部署iterator接口&#xff0c;转化为真正的数组[...arrayLik…

从远程主机断开连接_在外的同事们,远程连接不进公司的服务器,我拿什么来拯救你?...

我们公司大概有五个业务员是比较自由的&#xff0c;平时不是在日本就是在美国&#xff0c;要么就是在飞机和火车上&#xff0c;世界之大&#xff0c;哪里都有她们的去处。为了他们&#xff0c;我们专门设置了一台远程服务器供她们使用&#xff0c;主要的功能是通过远程进来使用…