SpringMVC中使用Thymeleaf模板引擎实例代码
作者:王学政
这篇文章主要介绍了SpringMVC中使用Thymeleaf模板引擎实例代码,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
本文研究的主要是SpringMVC中使用Thymeleaf模板引擎的相关内容,具体介绍如下。
Thymeleaf提供了一组Spring集成,允许您将其用作Spring MVC应用程序中全面替代JSP的功能。
Maven依赖
<!-- thymeleaf-spring4 --> <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spring4</artifactId> <version>3.0.6.RELEASE</version> </dependency>
配置模板解析器
JavaConfig的方式:
@Bean public SpringResourceTemplateResolver templateResolver(){ // SpringResourceTemplateResolver自动与Spring自己集成 // 资源解决基础设施, 强烈推荐。 SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver(); templateResolver.setApplicationContext(this.applicationContext); templateResolver.setPrefix("/WEB-INF/templates/"); templateResolver.setSuffix(".html"); // HTML是默认值, 为了清楚起见, 在此处添加。 templateResolver.setTemplateMode(TemplateMode.HTML); // 默认情况下, 模板缓存为true。如果您想要设置为false // 模板在修改时自动更新。 templateResolver.setCacheable(true); return templateResolver; } @Bean public SpringTemplateEngine templateEngine(){ // SpringTemplateEngine自动应用SpringStandardDialect // 并启用Spring自己的MessageSource消息解析机制。 SpringTemplateEngine templateEngine = new SpringTemplateEngine(); templateEngine.setTemplateResolver(templateResolver()); // 使用Spring 4.2.4或更高版本启用SpringEL编译器 // 可以加快大多数情况下的执行速度, 但是当一个模板中 // 的表达式在不同数据类型之间重用时, // 可能与特定情况不兼容, 因此该标志默认为“false” // 以实现更安全的向后兼容性。 templateEngine.setEnableSpringELCompiler(true); return templateEngine; }
XML的方式
<!-- SpringResourceTemplateResolver自动与Spring自己集成 --> <!-- 资源解决基础设施, 强烈推荐。 --> <bean id="templateResolver" class="org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver"> <property name="prefix" value="/WEB-INF/views/" /> <property name="suffix" value=".html" /> <!-- HTML是默认值, 为了清楚起见, 在此处添加。 --> <property name="templateMode" value="HTML" /> <!-- 默认情况下, 模板缓存为true。如果您想要设置为false --> <!-- 模板在修改时自动更新。 --> <property name="cacheable" value="true" /> </bean> <!-- SpringTemplateEngine自动应用SpringStandardDialect并 --> <!-- 使用Spring自己的MessageSource消息解析机制。 --> <bean id="templateEngine" class="org.thymeleaf.spring4.SpringTemplateEngine"> <property name="templateResolver" ref="templateResolver" /> <!-- 使用Spring 4.2.4或更高版本启用Spring EL编译器 --> <!-- 可以加快大多数情况下的执行速度, 但是当一个模板中 --> <!-- 的表达式在不同数据类型之间重用时, --> <!-- 可能与特定情况不兼容, 因此该标志默认为“false” --> <!-- 以实现更安全的向后兼容性。 --> <property name="enableSpringELCompiler" value="true" /> </bean>
Thymeleaf中的视图和视图分解器
@Bean public ThymeleafViewResolver viewResolver(){ ThymeleafViewResolver viewResolver = new ThymeleafViewResolver(); viewResolver.setTemplateEngine(templateEngine()); // 注意“order”和“viewNames”是可选的 viewResolver.setOrder(1); viewResolver.setViewNames(new String[] {".html", ".xhtml"}); return viewResolver; } 13420.2 Thymeleaf中的视图和视图分解器 @Bean public ThymeleafViewResolver viewResolver(){ ThymeleafViewResolver viewResolver = new ThymeleafViewResolver(); viewResolver.setTemplateEngine(templateEngine()); // 注意“order”和“viewNames”是可选的 viewResolver.setOrder(1); viewResolver.setViewNames(new String[] {".html", ".xhtml"}); return viewResolver; }
或者是以XML的格式:
<bean class="org.thymeleaf.spring4.view.ThymeleafViewResolver"> <property name="templateEngine" ref="templateEngine" /> <!-- 注意“order”和“viewNames”是可选的 --> <property name="order" value="1" /> <property name="viewNames" value="*.html,*.xhtml" /> </bean>
总结
以上就是本文关于SpringMVC中使用Thymeleaf模板引擎实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
您可能感兴趣的文章:
- Spring Boot使用Thymeleaf + Gradle构建war到Tomcat
- SpringBoot中的Thymeleaf模板
- springboot如何使用thymeleaf模板访问html页面
- spring boot thymeleaf 图片上传web项目根目录操作步骤
- IDEA+maven+SpringBoot+JPA+Thymeleaf实现Crud及分页
- Spring Boot + thymeleaf 实现文件上传下载功能
- Spring boot搭建web应用集成thymeleaf模板实现登陆
- spring boot+thymeleaf+bootstrap实现后台管理系统界面
- 详解SpringBoot+Thymeleaf 基于HTML5的现代模板引擎
- Spring Boot配置Thymeleaf(gradle)的简单使用