6.4.1 配置 Thymeleaf 视图解析器
为了要在 Spring 中使用 Thymeleaf,我们需要配置三个启用 Thymeleaf 与 Spring 集成的 bean:
ThymeleafViewResolver:将逻辑视图名称解析为 Thymeleaf 模板视图;
SpringTemplateEngine:处理模板并渲染结果;
TemplateResolver:加载 Thymeleaf 模板。
如下为声明这些 bean 的 Java 配置。
如果你更愿意使用 XML 来配置 bean,那么如下的声明能够完成该任务。
不管使用哪种配置方式,Thymeleaf 都已经准备就绪了,它可以将响应中的模板渲染到 Spring MVC 控制器所处理的请求中。
ThymeleafViewResolver 是 Spring MVC 中 ViewResolver 的一个 实现类。像其他的视图解析器一样,它会接受一个逻辑视图名称,并将其解析为视图。不过在该场景下,视图会是一个 Thymeleaf 模板。
需要注意的是 ThymeleafViewResolver bean 中注入了一个对 Spring-TemplateEngine bean的引用。SpringTemplateEngine 会在 Spring 中启用 Thymeleaf 引擎,用来解析模板,并基于这些模板渲染结果。可以看到,我们为其注入了一个 TemplateResolver bean 的引用。
TemplateResolver 会最终定位和查找模板。与之前配置 InternalResource-ViewResolver 类似,它使用了 prefix 和 suffix 属性。前缀和后缀将会与逻辑视图名组合使用,进而定位 Thymeleaf 引擎。它的 templateMode 属性被设置成了 HTML 5,这表明我们预期要解析的模板会渲染成 HTML 5输出。
所有的 Thymeleaf bean 都已经配置完成了,那么接下来我们该创建几个视图了。
Last updated