热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Thymeleaf摸板引擎和语法

开发工具与关键技术:idea,作者:农村扛粑子撰写时间:2021年6月8日前端交给我们的页面,是html页面。我们以前开

开发工具与关键技术:idea,
作者:农村扛粑子
撰写时间:2021年6月8日

前端交给我们的页面,是html页面。我们以前开发,我们需要把他们转成jsp页面,jsp好处就是当我们查出一些数据转发到JSP页面以后,我们可以用jsp轻松实现数据的显示,及交互等。看一下这张图:
在这里插入图片描述

他可以通过Template摸板 一个HellouserEL的表达式获取到里面的user,这个user呢是我们的数据后台Date给他的,然后经过摸板引擎渲染出去给到了output一个正常的页面,在这个页面之前都是通过摸板引擎来渲染的,可能有一些遍历或{user}EL的表达式获取到里面的user,这个user呢是我们的数据后台Date给他的,然后经过摸板引擎渲染出去给到了output一个正常的页面,在这个页面之前都是通过摸板引擎来渲染的,可能有一些遍历或userELuser,userDate,output,,来取值的,在springboot认为这个比较老了所以推荐使用thymeleaf模板引擎,我们其实大家听到很多,其实jsp就是一个模板引擎,还有用的比较多的freemarker,包括SpringBoot给我们推荐的Thymeleaf,模板引擎有非常多,但再多的模板引擎他们的思想都是一样的。
该怎么使用thymeleaf摸板引擎呢我们还是要导入他的依赖配置

org.thymeleaf thymeleaf-spring5 org.thymeleaf.extras thymeleaf-extras-java8time 导入依赖之后我们要在项目里面的ExternalLibraries文件下检查导入的版本是否是Maven:org.thymeleaf: thymeleaf:3.0.12.RELEASE以上的版本否则会报错。 Thymeleaf摸板引擎是写在项目下面的resource下面的templates里面 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210619154003493.png)

Thymeleaf分析
前面呢,我们已经引入了Thymeleaf,那这个要怎么使用呢?
我们首先得按照SpringBoot的自动配置原理看一下我们这个Thymeleaf的自动配置规则,在按照那个规则,我们进行使用。
我们去找一下Thymeleaf的自动配置类:在项目中连按两次shift键搜索ThymeleafProperties
@ConfigurationProperties(
prefix = “spring.thymeleaf”
)
public class ThymeleafProperties {
private static final Charset DEFAULT_ENCODING;
public static final String DEFAULT_PREFIX = “classpath:/templates/”;//前缀
public static final String DEFAULT_SUFFIX = “.html”;//后缀必须是HTML结尾
private boolean checkTemplate = true;
private boolean checkTemplateLocation = true;
private String prefix = “classpath:/templates/”;
private String suffix = “.html”;
private String mode = “HTML”;
private Charset encoding;
}
我们可以在其中看到默认的前缀和后缀!
我们只需要把我们的html页面放在类路径下的templates下,thymeleaf就可以帮我们自动渲染了。
使用thymeleaf什么都不需要配置,只需要将他放在指定的文件夹下即可!

  1. 编写一个TestController
    @Controller
    public class TestController {
    @RequestMapping("/test")
    public String test1(){
    //classpath:/templates/test.html
    return “test”;} }
  2. 编写一个测试页面 test.html 放在 templates 目录下 Test页面
启动项目在浏览器输入http://localhost:8080/test 得出结果。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210619153942949.png)

Thymeleaf语法,在同一个页面与控制器来简单的写几个来示范。
官网https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html
使用thymeleaf第一步需要在html文件中导入命名空间的约束xmlns:th=http://www.thymeleaf.org
控制器代码
@Controller
public class indexController {
@RequestMapping("/test")
public String test(Model model){
//存入数据 //存入数据 把集合里面的数据存放到users里面 Arrays.asList一个数组转换为集合 进行编率
model.addAttribute(“msg”,“

holle,springboot”); model.addAttribute(“users”, Arrays.asList(“你好小鸿”,“你好小玲”));

// return:classpath:/templates/test.html

return “test”;

}

}

页面代码

Test页面






[[ ${user} ]]

在浏览器上面输入网址http://localhost:8080/test他就会出数据如下图所示。

在这里插入图片描述


推荐阅读
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 本文详细介绍了如何解决Uploadify插件在Internet Explorer(IE)9和10版本中遇到的点击失效及JQuery运行时错误问题。通过修改相关JavaScript代码,确保上传功能在不同浏览器环境中的一致性和稳定性。 ... [详细]
  • Java 中的 BigDecimal pow()方法,示例 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解Tornado模板系统
    本文详细介绍了Tornado框架中模板系统的使用方法。Tornado自带的轻量级、高效且灵活的模板语言位于tornado.template模块,支持嵌入Python代码片段,帮助开发者快速构建动态网页。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文详细介绍了 BERT 模型中 Transformer 的 Attention 机制,包括其原理、实现代码以及在自然语言处理中的应用。通过结合多个权威资源,帮助读者全面理解这一关键技术。 ... [详细]
  • 本文介绍如何在 Android 中通过代码模拟用户的点击和滑动操作,包括参数说明、事件生成及处理逻辑。详细解析了视图(View)对象、坐标偏移量以及不同类型的滑动方式。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文介绍了如何使用 Spring Boot DevTools 实现应用程序在开发过程中自动重启。这一特性显著提高了开发效率,特别是在集成开发环境(IDE)中工作时,能够提供快速的反馈循环。默认情况下,DevTools 会监控类路径上的文件变化,并根据需要触发应用重启。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
author-avatar
Eminem被注册了
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有