企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 27.1.7 模板引擎 正如REST web服务,你也可以使用Spring MVC提供动态HTML内容。Spring MVC支持各种各样的模板技术,包括Velocity, FreeMarker和JSPs,很多其他的模板引擎也提供它们自己的Spring MVC集成。 Spring Boot为以下的模板引擎提供自动配置支持: 1. [FreeMarker](http://freemarker.org/docs/) 2. [Groovy](http://beta.groovy-lang.org/docs/groovy-2.3.0/html/documentation/markup-template-engine.html) 3. [Thymeleaf](http://www.thymeleaf.org/) 4. [Velocity](http://velocity.apache.org/)(1.4已不再支持) 5. [Mustache](http://mustache.github.io/) **注**:由于在内嵌servlet容器中使用JSPs存在一些[已知的限制](https://github.com/cwiki-us-spring-guides/Spring-Boot-Reference-Guide/tree/0047aa8098a650dde0c93f4d2e91754c83468c4b/IV.%20Spring%20Boot%20features/27.3.5.%20JSP%20limitations.md),所以建议尽量不使用它们。 使用以上引擎中的任何一种,并采用默认配置,则模块会从`src/main/resources/templates`自动加载。 **注**:IntelliJ IDEA根据你运行应用的方式会对classpath进行不同的排序。在IDE里通过main方法运行应用,跟从Maven,或Gradle,或打包好的jar中运行相比会导致不同的顺序,这可能导致Spring Boot不能从classpath下成功地找到模板。如果遇到这个问题,你可以在IDE里重新对classpath进行排序,将模块的类和资源放到第一位。或者,你可以配置模块的前缀为`classpath*:/templates/`,这样会查找classpath下的所有模板目录。