使用 thymeleaf 时不重启服务修改 html

一、引入

在被 spring 支配的环境下,我们欣然享受着 SpringBoot 带给我们的快速开发的乐趣,同时,pom 文件中引入

1
2
3
4
5
6
<dependency>
&nbsp;&nbsp;&nbsp;&nbsp;<groupId>org.springframework.boot</groupId>
&nbsp;&nbsp;&nbsp;&nbsp;<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>```<p>便可轻松使用 boot 推荐使用的模板引擎: thymeleaf&nbsp;</p><p>在开心地修改着 html 代码后,如何才能保证不重启 web 服务的同时页面仍是最新的代码呢?</p>
<!-- more -->
<h2>二、改善</h2><p><span style="font-size: 14px;">在此给出两点个人亲身开发体验小建议:</span></p><ol class="custom_num2 list-paddingleft-1" style="width: 691.594px; white-space: normal;"><li class="list-num-3-1 list-num2-paddingleft-1"><p>如果你使用的是 IntelliJ IDEA,那么你恭喜你,可以使用其中的快捷键&nbsp;<strong><span style="font-family: "Microsoft YaHei", Verdana, sans-serif, SimSun; background-color: #FFFFFF; color: #FF0000;">Ctrl+Shift+F9</span></strong><span style="color: #404040; font-family: "Microsoft YaHei", Verdana, sans-serif, SimSun; background-color: #FFFFFF;"> 来进行编译</span></p><p><span style="color: #404040; font-family: "Microsoft YaHei", Verdana, sans-serif, SimSun; background-color: #FFFFFF;"></span><span style="background-color: #FFFFFF; color: #404040; font-family: "Microsoft YaHei", Verdana, sans-serif, SimSun;">(注:它只会编译你所停留的页面,即若你停留在 a.html,那么此时只会编译这一个页面)</span></p></li><li class="list-num-3-2 list-num2-paddingleft-1"><p>在&nbsp;application.properties 配置文件中,设置如下配置(目的是禁用 Thymeleaf 模板缓存,仅建议开发时禁用)</p></li></ol>

spring.thymeleaf.cache=false<h2>三、加分项</h2><p>当然了,还有一点值得注意,你可以引入 spring-boot-devtools 来进行<strong><span style="color: #FF0000;">热部署</span></strong>,只需要在 pom 中引入如下:</p>


    org.springframework.boot
    spring-boot-devtools
    1.3.0.RELEASE
```

具体原理暂不赘述,稍加阐述下功能实现:

当我们修改了 classpath 下的文件(包括类文件、属性文件、页面等)时,其实我们是需要重启应用的,但是此热部署工具会自动重启应用,不需要手动去重因此我们并启,并且其采用的是双类加载器机制,所以启动会非常快。








------ 本文结束 感谢阅读 ------
0%