2.5 选择视图模板库
2.5 选择视图模板库
在大多数情况下,对视图模板库的选择取决于个人喜好。
表
模板 | |
---|---|
FreeMarker | spring-boot-starter-freemarker |
Groovy Templates | spring-boot-starter-groovy-templates |
JavaServer Page(JSP) | None (provided by Tomcat or Jetty) |
Mustache | spring-boot-starter-mustache |
Thymeleaf | spring-boot-starter-thymeleaf |
一般来说,可以选择想要的视图模板库,将其作为依赖项添加到构建中,然后开始在
已经在
如果希望使用不同的模板库,只需在项目初始化时选择它,或者编辑现有的项目构建以包含新选择的模板库。
例如,假设想使用
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
替换为:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mustache</artifactId>
</dependency>
当然,需要确保使用
<h3>Designate your wrap:</h3>
{{#wrap}}
<div>
<input name="ingredients" type="checkbox" value="{{id}}" />
<span>{{name}}</span><br />
</div>
{{/wrap}}
这是{{#wrap}}
块(以 {{/wrap}}
结尾)迭代{{id}}
和 {{name}}
标记引用项目的
在表
但是如果选择使用
2.5.1 缓存模板
默认情况下,模板在第一次使用时只解析一次,解析的结果被缓存以供后续使用。对于生产环境来说,这是一个很好的特性,因为它可以防止对每个请求进行冗余的模板解析,从而提高性能。
但是,在开发时,这个特性并不那么好。假设启动了应用程序并点击了玉米饼设计页面,并决定对其进行一些更改。当刷新
幸运的是,有一种方法可以禁用缓存。只需将
表
模板 | 缓存使能属性 |
---|---|
Freemarker | spring.freemarker.cache |
Groovy Templates | spring.groovy.template.cache |
Mustache | spring.mustache.cache |
Thymeleaf | spring.thymeleaf.cache |
默认情况下,所有这些属性都设置为
spring.thymeleaf.cache = false
惟一的问题是,在将应用程序部署到生产环境之前,一定要删除这一行
一个更简单的选择是使用