前提
- Spring Boot 2.3.3.RELEASE
- 内置Tomcat
- 模板使用thymeleaf
- 已配置
- On ‘Update’ action: update classes and resources
- On frame deactivation: update classes and resources
背景
- 在使用Spring Boot写完前端后,发现无法立即更新
这里纯属个人猜测了:
因为万恶的资本主义,不懂国内墙里的情况,人家为了方便开发,Springboot启动的时候默认启动了一个服务:LiveReload
这东西干嘛用的呢,就是网页连刷新都不用刷新了,资源文件一更新直接显示在页面上了,美滋滋的
但是这个东西呢,需要去Chrome浏览器的插件商店装个插件...不翻墙是没法装的...
所以在国外是个非常方便的东西,在国内就成了好多人用不了的不知名东西...
然后thymeleaf模板引擎默认开启了静态文件缓存,加快了访问速度,国外有LiveReload这个东西监听资源文件,可以实时更新了以后reload项目,显示在页面上,
但是国内没有啊,更新的静态文件就被thymeleaf缓存了,除非完全重启项目才能把项目缓存释放,否则就一直在缓存里面,就造成了不更新的现象了...
想用LiveReload的话,就去 菩提树下的杨过 大大的文章里面配吧,链接在下面(反正我是后端程序员我也用不到,跟我搭班的前端又不会翻墙懒得给他整)
https://www.cnblogs.com/yjmyzz/p/use-devtools-of-spring-boot-framework.html
解决方案
- 在application.yml(或者是你的配置文件里),把thymeleaf的缓存关闭
spring.thymeleaf.cache=false
资料参考