Thymeleaf 3 – Thymeleaf 3和Spring MVC快速入门
Thymeleaf 3发布到达。 新版本带来了许多新功能,例如HTML5支持以及不带标记的文本模板支持– [# th:utext="${thymeleaf.version}" /]
,改进的内联功能– <p>Thymeleaf [[${thymeleaf.version}]] is great!</p>
,性能改进等等。
使用Thymeleaf 3和Spring MVC入门的最简单方法是使用Spring MVC 4 Quickstart Maven Archetype 。 已更新原型以支持Thymeleaf3。下面将描述对原型所做的更改。
依存关系
该项目使用Spring Platform BOM进行依赖关系管理,但是(在撰写本文时)尚未声明对Thymeleaf 3的依赖关系,因此我需要手动声明版本。
- 胸腺
<dependency><groupId>org.thymeleaf</groupId><artifactId>thymeleaf</artifactId><version>3.0.0.RELEASE</version>
</dependency>
- Thymeleaf Spring 4:
<dependency><groupId>org.thymeleaf</groupId><artifactId>thymeleaf-spring4</artifactId><version>3.0.0.RELEASE</version>
</dependency>
- Thymeleaf Spring Security 4:
<dependency><groupId>org.thymeleaf.extras</groupId><artifactId>thymeleaf-extras-springsecurity4</artifactId><version>3.0.0.RELEASE</version>
</dependency>
使用原型生成的应用程序使用Java 8时间方言,并且由于Thymeleaf API已更改,因此方言依赖项也必须更新。 在Maven Central中将其可用之前,我们必须将快照存储库添加到POM:
<repository><id>sonatype-nexus-snapshots</id><name>Sonatype Nexus Snapshots</name><url>https://oss.sonatype.org/content/repositories/snapshots</url><snapshots><enabled>true</enabled></snapshots>
</repository>
然后声明依赖项:
<dependency><groupId>org.thymeleaf.extras</groupId><artifactId>thymeleaf-extras-java8time</artifactId><version>3.0.0-SNAPSHOT</version>
</dependency>
配置变更
- 模板解析器
之前的模板解析器:
@Bean
public TemplateResolver templateResolver() {TemplateResolver resolver = new ServletContextTemplateResolver();resolver.setPrefix(VIEWS);resolver.setSuffix(".html");resolver.setTemplateMode("HTML5");resolver.setCacheable(false);return resolver;
}
之后的模板解析器:
@Bean
public ITemplateResolver templateResolver() {SpringResourceTemplateResolver resolver = new SpringResourceTemplateResolver();resolver.setPrefix(VIEWS);resolver.setSuffix(".html");resolver.setTemplateMode(TemplateMode.HTML);resolver.setCacheable(false);return resolver;
}
- 模板引擎
@Bean
public SpringTemplateEngine templateEngine() {SpringTemplateEngine templateEngine = new SpringTemplateEngine();templateEngine.setTemplateResolver(templateResolver());templateEngine.addDialect(new SpringSecurityDialect());templateEngine.addDialect(new Java8TimeDialect());return templateEngine;
}
- 查看解析器:
@Bean
public ViewResolver viewResolver() {ThymeleafViewResolver thymeleafViewResolver = new ThymeleafViewResolver();thymeleafViewResolver.setTemplateEngine(templateEngine());thymeleafViewResolver.setCharacterEncoding("UTF-8");return thymeleafViewResolver;
}
范本
模板在该项目中未更改。 但是,如果要迁移实际项目,则可能对阅读迁移指南感兴趣。
参考文献
- Thymeleaf 3发布信息
- Thymeleaf 3迁移指南
- Spring MVC 4快速入门Maven原型
翻译自: https://www.javacodegeeks.com/2016/05/thymeleaf-3-get-started-quickly-thymeleaf-3-spring-mvc.html
Thymeleaf 3 – Thymeleaf 3和Spring MVC快速入门相关推荐
- Spring MVC快速入门
今天给大家介绍一下Spring MVC,让我们学习一下如何利用Spring MVC快速的搭建一个简单的web应用. 环境准备 一个称手的文本编辑器(例如Vim.Emacs.Sublime Text)或 ...
- 视频教程-基础篇:Spring MVC快速开发-Java
基础篇:Spring MVC快速开发 毕业于清华大学软件学院软件工程专业,曾在Accenture.IBM等知名外企任管理及架构职位,近15年的JavaEE经验,近8年的Spring经验,一直致力于架构 ...
- 视频教程-Spring boot快速入门-Java
Spring boot快速入门 十年项目开发经验,主要从事java相关的开发,熟悉各种mvc开发框架. 王振伟 ¥12.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+技术好课免费看 ...
- 视频教程-Spring框架快速入门到精通-Java
Spring框架快速入门到精通 十年项目开发经验,主要从事java相关的开发,熟悉各种mvc开发框架. 王振伟 ¥18.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+技术好课免费看 ...
- 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- spring boot 快速入门
文章来源:https://www.cnblogs.com/junyang/p/8151802.html spring boot入门 -- 介绍和第一个例子 "越来越多的企业选择使用sprin ...
- 【720开发】 spring boot 快速入门
spring boot 快速入门 通过构建简单的REST应用,了解spring boot的开发基本流程,验证其简单.易用特性. 环境要求 Spring Boot 2.0.0.BUILD-SNAPSHO ...
- Spring框架快速入门
目录 什么是Spring? 为什么学习Spring? Spring的快速入门 Spring的版本 IOC概述 什么是IOC? Spring的IoC入门 下载Spring的开发包 创建web项目,引入S ...
- .net mvc html访问数据库,【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6) - 三生石上...
图挂了的说明: 我是在Word中写的本系列文章,然后转成的HTML,所以图片都存在于 fineui.com 服务器,由于临时访问量太多,服务器喘不过气了.... 你可以稍后访问,实在是抱歉...... ...
最新文章
- php ping 命令注入,CTF关于ping命令注入问题
- SpringBoot使用LibreOffice转换PDF
- java 中调用 Matlab 的函数
- 容器的访问元素的成员函数(front,back,下标和at)返回的都是引用,如果顺序容器是const的对象,那么返回的是const的引用
- ansible命令应用示例
- dubbo forbid service的解决办法
- 安装arm虚拟机_虚拟机Parallels出手:苹果M1的Mac能运行Win 10 还挺顺畅
- Ablative analysis(消融分析)
- java super实例_Java 的 super 学习的一个实例
- 头文件malloc.h:函数 mallopt()的选项
- 蓝桥c++2013真题:逆波兰表达式(代码填空题)
- Android第一个程序Say Hello To Android
- 基于python下django框架 实现旅游景区景点售票系统详细设计
- PCB中常见的单位换算
- 接收机灵敏度的计算公式推导和分析
- linux挂载硬盘提示我格式化,linux中磁盘格式化挂载使用
- FPGA输出五路PWM
- 未来科技 从零到一「真格星球 · 前沿科技创业营」探访加速科技
- linux压缩分区大小,linux如何无损调整分区大小的详细介绍
- BZOJ 4716 假摔
热门文章
- 聊聊并发(八)——Fork/Join框架介绍
- 到底什么是 OAuth 2.0
- 漫画:什么是SHA系列算法
- 你在学校我安排了你没有做到最多凶你一顿,在公司不一样,直接得让走人!...
- break VS continue
- 第5步 配置pom.xml文件 pom文件好了就是jar包引入好了
- wordcloud python3.7_[原创]win7/64位系统+python3.7.2下安装wordcloud库失败之解决——一个莫名其妙的方法...
- 分类算法中常用的评价指标
- jvm(13)-线程安全与锁优化
- Mac 环境变量配置