spring_reference/IV. Spring Boot features/26.1.5. Template engines.md

1.4 KiB
Raw Blame History

26.1.5. 模板引擎

正如REST web服务你也可以使用Spring MVC提供动态HTML内容。Spring MVC支持各种各样的模板技术包括Velocity, FreeMarker和JSPs。很多其他的模板引擎也提供它们自己的Spring MVC集成。

Spring Boot为以下的模板引擎提供自动配置支持

  1. FreeMarker
  2. Groovy
  3. Thymeleaf
  4. Velocity

如果可能的话应该忽略JSPs因为在内嵌的servlet容器使用它们时存在一些[已知的限制](26.3.4. JSP limitations.md)。

当你使用这些引擎的任何一种并采用默认的配置你的模板将会从src/main/resources/templates目录下自动加载。

IntelliJ IDEA根据你运行应用的方式会对classpath进行不同的整理。在IDE里通过main方法运行你的应用跟从Maven或Gradle或打包好的jar中运行相比会导致不同的顺序。这可能导致Spring Boot不能从classpath下成功地找到模板。如果遇到这个问题你可以在IDE里重新对classpath进行排序将模块的类和资源放到第一位。或者你可以配置模块的前缀为classpath*:/templates/这样会查找classpath下的所有模板目录。