博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Thymeleaf 模板 springboot集成使用
阅读量:4334 次
发布时间:2019-06-07

本文共 2519 字,大约阅读时间需要 8 分钟。

一.Thymeleaf是什么?

          简单说, Thymeleaf 是一款用于渲染XML/XHTML/HTML5内容的模板引擎,类似我之前用过的FreeMarker 。由于它支持 html 原型,然后在 html 标签里

     通过增加额外的属性来达到模板+数据的展示方式。浏览器解释 html 时会忽略未定义的标签属性,所以 thymeleaf 的模板可以静态地运行;当有数据返回到页面时,Thymeleaf 标签会动态地替换掉静态内容,使页面动态显示。

优势:1.Thymeleaf 开箱即用的特性。它提供标准和spring标准两种方言。

           2.Thymeleaf 提供spring标准方言和一个与 SpringMVC 完美集成的可选模块,可以快速的实现表单绑定、属性编辑器、国际化等功能。

1.添加依赖。

2.html 页面需添加:

 

二.基本使用.      

     1.定义和引用模板

       日常开发中,我们经常会将导航栏,页尾,菜单等部分提取成模板供其它页面使用。

       在Thymeleaf 中,我们可以使用th:fragment属性来定义一个模板。

       我们可以新建一个简单的页尾模板,如:/WEB-INF/templates/footer.html,内容如下:

     上面定义了一个叫做copyright的片段,接着我们可以使用th:include或者th:replace属性来使用它:

      th:include 和 th:replace区别

     th:include 是加载模板的内容,而th:replace则会替换当前标签为模板中的标签

三.其他常见,字面量,对象,集合等的应用

  后台存入了测试数据

@PostMapping("/greet") public ModelAndView greetingSubmit(@ModelAttribute(value="greeting") Greeting greeting) {
ModelAndView mov = new ModelAndView("result"); greeting.setNow(new Date()); greeting.setRole("admin"); ArrayList
list = new ArrayList<>(); list.add(greeting); list.add(greeting); list.add(greeting); mov.addObject("greeting",greeting); mov.addObject("name","bin"); mov.addObject("execMode","execMode"); mov.addObject("list",list); return mov; }

 

页面的获取方法

       Getting Started: Handling Form Submission     

Result

2017-12-01

User is admin

User is a manager

这里的内容都会输出

id content now
Onions 2.41 8

Thymeleaf提供了一系列Utility对象(内置于Context中),可以通过#直接访问

#dates创建日期

String判断字符串是否为空

String判断内对象是否为空

String判断内长度

String判断equals

Submit another message

页面展示的效果

 

四.表单中的使用

  

测试表单

其中th:object="${greeting}"指定了对象属性绑定。与后台控制器接受的对象一致,如下:

 

@PostMapping("/greet") public ModelAndView greetingSubmit(@ModelAttribute(value="greeting") Greeting greeting) {
... return mov; }

 

转载于:https://www.cnblogs.com/xwy6/p/8317497.html

你可能感兴趣的文章
vs无法加载项目
查看>>
Beanutils基本用法
查看>>
玉伯的一道课后题题解(关于 IEEE 754 双精度浮点型精度损失)
查看>>
《BI那点儿事》数据流转换——百分比抽样、行抽样
查看>>
哈希(1) hash的基本知识回顾
查看>>
Leetcode 6——ZigZag Conversion
查看>>
dockerfile_nginx+PHP+mongo数据库_完美搭建
查看>>
Http协议的学习
查看>>
【转】轻松记住大端小端的含义(附对大端和小端的解释)
查看>>
设计模式那点事读书笔记(3)----建造者模式
查看>>
ActiveMQ学习笔记(1)----初识ActiveMQ
查看>>
Java与算法之(2) - 快速排序
查看>>
Windows之IOCP
查看>>
机器学习降维之主成分分析
查看>>
WebSocket & websockets
查看>>
openssl 升级
查看>>
ASP.NET MVC:通过 FileResult 向 浏览器 发送文件
查看>>
CVE-2010-2883Adobe Reader和Acrobat CoolType.dll栈缓冲区溢出漏洞分析
查看>>
使用正确的姿势跨域
查看>>
AccountManager教程
查看>>